2017-07-18 62 views
7

我用Asteroid作为我的ddp来连接我的Meteor应用程序作为后端。前端运行https,它可以在Chrome上完美运行。所以它实际上是由两个单独运行的应用程序组成的。但它在Safari中并不顺利。由于存在混合/不安全内容,Safari会阻止连接。如何在Meteor应用程序上设置安全的websocket(localhost)

到目前为止,我已将force-ssl包添加到我的Meteor应用程序,但仍然没有运气。如何在我的本地开发机器上启用wss协议(localhost

回答

1

您是否尝试过使用http://localhost:3000在本地主机上进行连接?如果您的Meteor后端和前端都在本地主机上运行,​​那么您不应该尝试通过https或wss进行连接。您的机器没有运行可信证书,因此无法建立连接。

此外,请不要在本地使用force-ssl,这一点与上面提到的相同。

如果上述解决方案不起作用,请从Safari发布完整的错误。请说明哪些地方正在运行(它们都在本地主机上,还是只有一个)。

+0

是的两个都运行本地主机。我也可以生成自签名证书,而且我真的需要安全层,因为浏览器不能接受混合内容 – Muhaimin

+0

即使自签名证书也不会在此工作,因为它不会被信任。你不需要force-ssl,而是使用类似nginx或apache的东西来强制ssl,当你是你的应用程序托管。然后在你的开发环境中删除force-ssl包,它应该适合你。 – JoshJoe

+0

@JoshJoe我面临类似的问题,我已经把它贴在stackoverflow上,没有得到任何答复。你可以看看吗? https://stackoverflow.com/questions/47430122/uncaught-typeerror-a-qs-unescape-is-not-a-function – AnoopGoudar

相关问题