シンプルなサーバー ロジック、ビュー、多数のクライアント側 JS など、ごく普通の Express アプリであるアプリがあります。多くの AJAX リクエストを実行する必要があります。それらのいくつかは、HTTPS プロトコルで保護する必要があります (必要でないものもあります)。
したがって、私のサーバーは HTTP と HTTPS の両方で動作するはずです。また、ローカル マシン (通常は nodemon で実行) と Heroku の両方で動作するはずです。
私が理解している限り、Heroku はリッスンできる単一のポート (process.env.PORT) を提供し、プロキシを介してすべてのリクエストを処理します (したがって、アプリはこのポートをリッスンし、proto を気にしません。そうですか? )
それで、私はこれを正しく理解していますか?開発マシンとHerokuには別のコードが必要ですか?
お気に入り
...
app = express()
...
if process.env.NODE_ENV == 'production'
app.listen(process.env.PORT)
else
https = require('https')
http = require('http')
http.createServer(app).listen(5080) # some local port
options = {
key: fs.readFileSync('key.pem'),
cert: fs.readFileSync('cert.pem') # my self-signed files
}
https.createServer(options, app).listen(5443) # some different local port
これに対処する適切な方法はありますか?