遇到的问题
解决方法
我们经常需要获取网页的url,此时就会用到如下:
document.location.protocol //判断是 https: 还是http:
document.location.hostname //获取是 localhost 还是192.168.100.118 还是www.baidu.com
document.location.port //获取端口号 8080 等
IE是从10版本开始支持WebSocket的,但是我在js中写完WebSocket后,其他浏览器可以正常运行,但是到IE就报错,查了一圈后仍然没有解决这个错误,最后发现:WebSocket的协议ws与wss的区别,这类比于http与https,而我的后端又做了SSL,所以请求地址中是https,相应的js中的WebSocket的协议也应该是wss,改完之后立马就可以了。
http:协议下
var webSocket = new WebSocket('ws://127.0.0.1:9100');
https:协议下
var webSocket = new WebSocket('wss://127.0.0.1:9100');
修改后的js代码:
这样能够兼容 http协议和https协议,亲测有效哦!