node ios socket.io SSL 适用于 xcode 调试,但不适用于 ipa install

Posted

技术标签:

【中文标题】node ios socket.io SSL 适用于 xcode 调试,但不适用于 ipa install【英文标题】:node ios socket.io SSL works with xcode debug but does not with ipa install 【发布时间】:2014-05-25 09:50:04 【问题描述】:

有节点 https 设置

const server = require('https').createServer(

    key: fs.readFileSync('ssl/some.key'),
    cert: fs.readFileSync('ssl/some.crt')
, handler);

ios 应用在 xcode 调试中表现良好,但在通过 .ipa 文件分发应用时会丢失连接。

【问题讨论】:

你有什么解决办法吗? 我不知道为什么调试版本有效。它不应该在 release(ipa) 中调试邻居。就我而言,这是一个损坏的 https 设置(错过了 intermediate.crt)。尝试检查您的 SSL 设置,包括设置的完整性、证书的有效性、服务器和客户端的时钟设置。 【参考方案1】:

节点 https 设置必须包含中间 CA 证书(由证书颁发机构提供):

const server = require('https').createServer(

    // this line is required.
    ca: fs.readFileSync('ssl/intermediate.crt'),

    key: fs.readFileSync('ssl/some.key'),
    cert: fs.readFileSync('ssl/some.crt')
, handler);

【讨论】:

以上是关于node ios socket.io SSL 适用于 xcode 调试,但不适用于 ipa install的主要内容,如果未能解决你的问题,请参考以下文章

Nginx + Node.js + Socket.io + SSL 可能吗?

将 Socket.IO 与 Apache、Node.js、SSL 和 CloudFlare (HTTP 500) 一起使用

在 node.js 中使用 socket.io 设置服务器-服务器 SSL 通信

通过 SSL 使用 Socket.io Node.js 出现网关错误

Socket.io无法在Node.js前面使用Nginx反向代理

为 socket.io 和 SSL / WSS 配置 Apache