[英]How to import socket.io on client side - SOCKET.IO + NODE.JS
[英]How to configure socket.io to listen to client side
我是使用套接字的新手,並不完全了解它們的工作原理。
當我加載我的網站時出現此錯誤我只是收到此錯誤“chat.js:4563 GET http://localhost/socket.io/?EIO=3&transport=polling&t=N3Jn3vr 404 (Not Found)”
我錯過了什么? 我假設我必須以某種方式使這兩個端口相互協作?
socket.js 文件:
var app = require('express')();
var http = require('http').createServer(app);
var io = require('socket.io')(http);
http.listen(3000, function(){
console.log('listening on *:3000');
});
io.on('connection', function(socket){
socket.on('chat.message', function(message) {
console.log('x: ' + message)
})
});
chat.js 文件:
import io from 'socket.io-client';
const socket = io('http://localhost:80');
var app = new Vue({
el: '#app',
mounted() {
},
data: {
message: null
},
methods: {
send() {
socket.emit('chat.message', this.message)
}
}})
刀片文件:
@extends('dashboard.base')
@section('content')
<div class="container-fluid">
<div class="fade-in">
<div class="row">
<div class="card mx-auto text-center w-50">
<div class="card-header">
Live Chat
</div>
<div id="app" class="card-body">
<input v-model="message" type="text">
<span class="btn btn-success" @click="send">Send</span>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('javascript')
<script src="{{ mix('js/chat.js') }}"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.3.0/socket.io.js"></script>
@endsection
由於 express 和 socket.io 都使用http
它們將共享相同的端口。 所以你應該在端口 3000 而不是端口 80 上監聽套接字連接。
您可以在沒有 url 的情況下使用io
初始化套接字對象,因為它與您的 Express 應用程序位於同一端口上。 Socket.io 將連接到為頁面提供服務的同一台主機
const socket = io();
此處的入門頁面提供了相同的概述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.