我有一个GraphQL节点api层,默认情况下,它侦听端口3001。
当我使用ZipDeploy将应用程序部署到Azure Web应用程序时,我无法访问任何终结点(例如/ graphql)。
我知道Azure Web Apps仅在80或443上侦听,但是在将我的应用程序配置为在其中任何一个侦听时出现错误。
2019-06-04 10:09:40 [32minfo[39m: Running a GraphQL API server at
http://localhost:443/graphql
events.js:167
throw er; // Unhandled 'error' event
^
Error: listen EACCES :::443
at Server.setupListenHandle [as _listen2] (net.js:1286:14)
at listenInCluster (net.js:1334:12)
at Server.listen (net.js:1421:7)
Azure中还有其他需要配置的内容吗?
谢谢, 杰夫
答案 0 :(得分:0)
如果要部署到Azure Web App,则只有端口80
和443
是面向公众的。这会映射到您的应用程序要监听的特定端口,可通过process.env.PORT
进行检索。
如果您同时在Azure和本地中运行,则可以根据对问题中对端口3001的引用,轻松地管理所侦听的端口,诸如此类:
var port = process.env.PORT || 3001;
server.listen(port);