在同一局域网内访问失败
直接报create stream failed!但是是有接入进来的, 创建新连接 3 新用户a48f097b-ea30-4773-ab27-a82ab3707981加入房间12 解决了,是因为浏览器不支持了
如何解决的?我这边看应该是因为不支持https
@zhonglu900505 求告知,随时@我,或者邮箱[email protected]
@zhonglu900505 我遇到与你相同的情况,请问一下如何解决的,谢谢
chrome如果不是https无法使用,使用https之后websocket也需要使用wss,然后问题来了,服务端怎么添加ssl支持呢?
@darkicerain server = require('https').createServer(options, app) options 包含私钥 key 和证书 crt
@zhonglu900505 想问下你最后是怎么解决的,问题和你的一样,换浏览器运行也不行
skyrtc 这个包是不是不支持https 协议?
@msyfls123 改成server = require('https').createServer(options,app)之后 直接连服务器都跑不起来了。
@LointaineAIMEE options 是一个对象…… 跑不起来你看下报错是什么 我架起来是这样的,https://masy.site/webrtc/
能发下你的代码么 @msyfls123
我也改成https协议了,但是只改了server.js这段,是不是其它部分也要改? @msyfls123

我当时的解决办法是用了nginx来做https,反向代理到nodejs的端口,nodejs的部分全部都http就行了,代码不用改,只需要配置好nginx就ok了
server.js
var express = require('express');
var app = express();
var https = require('https');
var fs = require('fs')
var server = https.createServer({
key: fs.readFileSync('/path/to/your.key'),
cert: fs.readFileSync('/path/to/your.crt')
}, app);
var SkyRTC = require('skyrtc').listen(server);
index.html
//rtc.connect("ws:" + window.location.href.substring(window.location.protocol.length).split('#')[0], window.location.hash.slice(1));
rtc.connect("wss://" + location.hostname + ":3000/", window.location.hash.slice(1));
然后我还配了 Nginx 代理
location /webrtc/ {
proxy_pass https://127.0.0.1:3000/;
}
新手没配置过Nginx...,谢谢啦,我去看看怎么配置 @darkicerain @msyfls123
谢谢两位大哥了。我先按照你们说的看看。 @darkicerain @msyfls123
我把项目部署到服务器上的时候也出现了这个问题。请问这个问题是所有浏览器都会出现还是只是chrome会出现呢?(本地测试了一下,所有的浏览器都会出现问题,问这个问题是想知道是我部署上的错误还是HTTPS导致的错误) @msyfls123 @darkicerain
@norshtein 应该只有chrome会要求一定要https,我当时测试时是这样
@msyfls123 发布的版本出错了
@feifanyajun 重启了下...
有人解决这个问题了吗?能否把源码发一下
按F12就会发现出现了警告,insecure origin。
解决的办法是,找到chrome://flags,搜索insecure origins,找到如下图的选项。
Insecure origins treated as secure
enable此选项,然后在输入框中打入你要输入的IP:PORT。
重启生效。
第二种方法是,你为自己的域名设置https,可以使用Let's encrypt。