        :response response-body}
     uuid (assoc :uuid uuid)))
 
+;; this is a fire and forget POST
+(def http-post
+  (condp = host-env
+    :node
+    (let [http (js/require "http")]
+      (fn [url post-data]
+        (let [data (volatile! "")
+              uri (guri/parse (str url))]
+          (-> (.request http
+               #js {:host (.getDomain uri)
+                    :port (.getPort uri)
+                    :path (str (.getPath uri) (when-let [q (.getQuery uri)]
+                                                (str "?" q)))
+                    :method "POST"
+                    :headers #js {"Content-Length" (js/Buffer.byteLength post-data)}}
+               (fn [x]))
+              (.on "error" #(js/console.error %))
+              (doto
+                  (.write post-data)
+                  (.end))))))
+    (fn [url response]
+      (xhrio/send url
+                  (fn [e] (debug "Response Posted"))
+                  "POST"
+                  response))))
+
 (defn respond-to [{:keys [websocket http-url] :as old-msg} response-body]
   (let [response (response-for old-msg response-body)]
     (cond
       websocket
       (.send websocket (pr-str response))
       http-url
-      (xhrio/send http-url
-                  (fn [e] (debug "Response Posted"))
-                  "POST"
-                  (pr-str response)))))
+      (http-post http-url (pr-str response)))))
 
 (defn respond-to-connection [response-body]
   (respond-to (:connection @state) response-body))

                 :args (mapv #(if (string? %) % (gjson/serialize %)) args)}))
  (setup-printing!))

(defn ensure-websocket [thunk]
  (if (gobj/get goog.global "WebSocket")
    (thunk)
    (if-let [websocket-class
             (or (gobj/get goog.global "FIGWHEEL_WEBSOCKET_CLASS")
                 (and (= host-env :node)
                      (try (js/require "ws")
                           (catch js/Error e
                             nil)))
                 (and (= host-env :worker)
                      (gobj/get js/self "WebSocket")))]
      (do
        (gobj/set goog.global "WebSocket" websocket-class)
        (thunk)

    (when (empty? (connections-available repl-env))
      (Thread/sleep 500)
      (recur))))

(defn send-for-eval [{:keys [focus-session-name ;; just here for consideration
                             broadcast] :as repl-env} connections js]
