我有一个 html 页面,需要通过套接字连接到 node.js 服务器。
该代码在我的 EC2 上托管的 html 页面中可以工作,但是,当我将它放在我的计算机上的 HTML 页面上时,它就无法工作。这是我的代码:
<script type="text/javascript src="http://54.213.92.113:8080/socket.io/socket.io.js"></script>
<script type="text/javascript src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
var socket = io.connect('http://54.213.92.113:8080');
$(document).ready(function(){
socket.on('jqplot', function(sentdata){
alert(sentdata);
});
});
</script>
我不知道为什么这不起作用...我觉得我没有做正确的事情!
当我注释掉行 var socket = io.connect('http://54.213.92.113:8080'); 时,JavaScript 就会工作;
最佳答案
54.213.92.113是外部EC2地址吗?
实例(安全组)的8080端口是否开放?
- ping - 使用外部或 ElasticIP
- nmap(我检查了,它无法访问)- 将 8080 添加到实例分配的安全组
关于javascript - io.connect 不适用于本地 html 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18066802/