首页 > 解决方案 > socket io 开始给出 cors 错误。Cors 请求失败

问题描述

我有一个chat.php文件和它。它运行良好,但是当我更改chat.phpprivate.php我的 socket.io 时停止显示消息。但我仍然可以发送消息,但我必须刷新页面才能看到它们。我不知道为什么它因为更改了文件名而停止了。这是我的private.php文件的结尾。

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/3.0.4/socket.io.min.js"></script>
<script>
  var socket = io.connect('<?php echo $server_ip; ?>');
  socket.on('connect', function (data) {
    socket.emit('join', "<?php echo $id ?>", "<?php echo $sender ?>");
  });

  socket.on('ReceivedMessage', function (data) {
    var json = JSON.parse(JSON.stringify(data));

    if (json.type == 2) {
      location.reload();
    } else {
      if (json.sender == receiver) {
        message += '<div class="received">';
        message += '<div class="receiver-name"><?php echo $receiver["name"]; ?></div>';
        message += '<span>' + json.message + '</span>';
        message += '<span class="chat-data"><?php echo date("d-m-Y H:i"); ?></span>';
        message += '</div>';
      } else {
        message += '<div class="sent">';
        message += '<div class="sent-name"><?php echo $sender["name"]; ?></div>';
        message += '<span>' + json.message + '</span>';
        message += '<span class="chat-data"><?php echo date("d-m-Y H:i"); ?></span>';
        message += '</div>';
      }

      $(".chat-list").append(message);

      var element = document.getElementById("box");
      element.scrollTop = element.scrollHeight;
    }
    console.log(data);
  });
</script>

标签: javascriptphpsocket.io

解决方案


推荐阅读