Expressを実行しているアプリケーションがあり、 electron を使用して配布しようとしています。
これでデバッグ中の電子を実行します:
_/path/to/electron/Electron.app/Contents/MacOS/Electron path-to-my-app
_
私のアプリケーションは完全に正常に動作します。 Expressはサーバーを起動し、すべてが機能します。メインウィンドウはmainWindow.loadUrl('http://localhost:3000/');
を使用して正しく開きます。
distributionチュートリアル(前にリンク)に従うと、アプリケーションリソースを次の場所にコピーします。
_/path/to/electron/Electron.app/Contents/Resources/app
_
しかし、Electron.appを実行すると、メインウィンドウに_Cannot GET /
_が表示されます...しかし、その理由はわかりません。
何か案は?
私の唯一の考えは、process.cwd()
がここでドキュメントルートを定義するのに正しく役立っていないということです。
_//configure Express to default web requests to /workspace/ folder
expressApp.use(express.static(process.cwd() + '/workspace'));
_
しかし、その場合、私はそれを回避する方法がわかりません。
express
は、何らかの理由で私のドキュメントルートマッピングが気に入らなかったことがわかりました。
使用するのではなく:
//configure Express to default web requests to /workspace/ folder
expressApp.use(express.static(process.cwd() + '/workspace'));
私は代わりにこれを使用します:
expressApp.use(express.static(path.join(__dirname, 'workspace')));
process.cwd
を使用せず、代わりにprocess.resourcesPath
を使用してください。