1

Go で Web サービスを開発しており、その UI を でvue.jsパッケージ化された Web サイトに委譲しwebpackます。

My Go サービスは、UI と UI が使用する REST API のホストを担当します。

vue.js開発モードでは、webpackツール (たとえば inotify ベースの自動リロード) の恩恵を受けたいので、これを行う Go プログラムにスイッチを追加しました。

var handler http.Handler

if isDevelopment {
    // url below points to the webpack standalone
    // development server, at http://localhost:8080.
    proxy := httputil.NewSingleHostReverseProxy(url)
    proxy.FlushInterval = time.Millisecond * 100
    handler = proxy
} else {
    handler = http.FileServer(http.Dir("www"))
}

したがって、基本的に、開発モードでは、webpack の開発サーバーを ( でnpm run dev) 起動でき、Go プログラムはすべての UI 要求をそれに委任します。

これは、数秒後にChromeが次のように文句を言うことを除いて、驚くほど機能します。

http://localhost:9999/__webpack_hmr net ::ERR_INCOMPLETE_CHUNKED_ENCODING を取得します

自動更新はしばらく動作を停止し、最終的には元に戻りますが、webpack のスタンドアロン サーバーに直接接続する場合よりも遅くなります。

Goの問題を追跡できると思いますが、httputil.ReverseProxyイベントソースを適切に処理するための特定のコードはないと思います.

これは既知の問題ですか? Go リバース プロキシ イベント ソースを認識/互換性を持たせるためにできることはありますか?

4

0 に答える 0