首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法连接到套接字io中的外部服务器(api)

无法连接到套接字io中的外部服务器(api)
EN

Stack Overflow用户
提问于 2017-08-02 18:18:37
回答 1查看 739关注 0票数 0

我正在尝试连接到一个唯一的api,但没有工作,给我一个错误:

代码语言:javascript
复制
XMLHttpRequest cannot load https://api.sports/socket.io/?api_key=aredasdasdadds&EIO=3&transport=polling&t=LsYSPsv. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8000' is therefore not allowed access. The response had HTTP status code 596.

奇怪的是错误中显示了一个不同的api url。

我的代码是:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>

<h1>Web socket</h1>
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.3/socket.io.js"></script>
<script type="text/javascript">


    // Create SocketIO instance, connect

    var socket = new io('https://api.sports.com/soccer-/eu/en/matches/summary.json?api_key=aredasdasdadds');
    socket.connect();

    // Add a connect listener
    socket.on('connect',function() {
        console.log('Client has connected to the server!');
    });
    // Add a connect listener
    socket.on('message',function(data) {
        console.log('Received a message from the server!',data);
    });


    // Sends a message to the server via sockets
    function sendMessageToServer(message) {
        socket.send(message);
    }
</script>
</body>
</html>
EN

回答 1

Stack Overflow用户

发布于 2017-08-18 00:10:27

你的服务器是什么?

首先,您必须检查客户端和服务器上的socket.io版本是否相同(我看到客户端上的版本是2.0.3)。

其次,你只需要像这样使用你网站的域名:

代码语言:javascript
复制
  var socket = io.connect('ws://https://api.sports.com:8443/', {transports: ['websocket']});  

并将端口设置为侦听,对于https,端口通常为8443。

致以问候!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45458040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档