node.js - 如何在一个 Node 服务器中绑定(bind) http 和 https

标签 node.js http https socket.io bind

我有一个使用 node.js 服务器的聊天应用程序,几天前我们从 http 迁移到 https 服务器,其中 https 服务器在网络上运行良好但在 native 应用程序上运行不正常,因此为此我们创建了具有不同的新 http 服务器端口号。

现在我有两个 Node socket.io 服务器,一个是在端口 3000 上工作的 http(对于移动客户端),另一个是在 3001 端口上工作的 https(对于 Web 客户端),两个服务器都有相同的代码,但现在我无法在 native 和网络用户之间进行通信。

那么 Node 服务器是否可以在同一个端口同时监听HTTP和HTTPS请求

有什么方法可以将 HTTp 服务器请求发送到 HTTPS 服务器?

下面是HTTP服务器的代码

  var app = require('http').createServer(handler),
io =require('socket.io').listen(app);
var querystring = require('querystring');
var http=require('http');
var fs = require('fs');
var webservice_host="xxxxxxxxxxxx.com";
var port = process.argv[2] || 3000;
var authKey="";

最佳答案

我不确定您是否可以让 http 和 https 服务器同时监听同一端口并仅接受其协议(protocol)。

有什么方法可以将 HTTp 服务器请求发送到 HTTPS 服务器?

是的,查看这个解释如何创建 HTTP -> HTTPS 代理的问题。 How to use node-http-proxy for HTTP to HTTPS routing?

关于node.js - 如何在一个 Node 服务器中绑定(bind) http 和 https,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33039865/

相关文章:

java - 如何使用 Java 的 HttpClient 在慢速流响应主体上超时

php - 通过 HTTPS 发布表单值

google-app-engine - Google Compute Engine 上来自 GoDaddy 的 SSL 证书

javascript - SyntaxError : Unexpected identifier in selenium-webdriver/lib/http. js:454 异步执行(命令)

javascript - 如何使用 Webpack 在 JavaScript 中导入 Frontmatter 和 Markdown

java - 非标准 HTTP 方法和 Apache Http 组件

c# - 404 for web.api cors 选项

node.js - 带有 expressjs 和 SSL p7b 证书的 nodejs

node.js - 如何使用异步/等待从另一个函数访问请求的主体?

node.js - 我们可以使用 Flask 渲染 .ejs 文件吗?