我需要测试安全的websockets.我想用自签名证书来做.因此,遵循这些指令在节点中制作了快速Web服务器.
然后我使用ws npm模块添加了一个websocket服务器.
所以我去Chrome中试试吧.当我第一次访问https页面时,Chrome就会抱怨证书无法验证(这是预期的)但是我点击"高级"并"继续"它连接到页面并且websockets工作并且是安全的.
那么我在Safari中尝试一下.它还抱怨证书无法验证(预期),但我点击"继续".它加载HTTPS页面但不会执行websockets.OSX Safari和iOS Safari都显示
WebSocket network error: OSStatus Error -9807: Invalid certificate chain
Run Code Online (Sandbox Code Playgroud)
有没有办法在Safari中使用自签名证书?特别是没有将自签名根证书添加到操作系统?
自从您询问以来,情况似乎已经发生了变化,因为在接受自签名证书后,它现在可以在 OSX Safari 上运行(这将需要输入您的 OSX 管理员密码一次)。
对于移动设备,唯一对我有用的解决方法是根本不使用 SSL (ws://)。
我不确定 Safari 是否会接受混合的 https:// + ws:// 页面,但如果您想为 http 部分保留 SSL,那么值得一试。
我找不到苹果官方文档说 websocket 不接受自签名证书,但那里的每个帖子似乎都是这么说的。
| 归档时间: |
|
| 查看次数: |
2236 次 |
| 最近记录: |