Đã trải qua nhiều bài đăng trên chồng tôi vẫn không thể tìm thấy câu trả lời đúng.CORS node js issue
Kiểm tra tài liệu về số mở rộng CORS.
Tôi có đoạn code sau máy chủ và chạy:
var WebSocketServer = require("ws").Server
var http = require("http")
var express = require('express')
var cors = require('cors')
var app = express();
app.use(cors());
var port = process.env.PORT || 9000
var server = http.createServer(app)
server.listen(port)
var count = 0;
var clients = {};
var rooms = {};
var wss = new WebSocketServer({server: server})
wss.on("connection", function(ws) {
ws.on("create-room", function(data) {
rooms[data] = {creator : data.user_id, created : new Date()}
})
ws.on("close", function() {
console.log("websocket connection close")
})
})
Nhưng tôi nhận được:
XMLHttpRequest không thể tải http://localhost:9000/socket.io/?EIO=3&transport=polling&t=LE-CbU0. Không thể sử dụng ký tự đại diện ' ' * 'trong tiêu đề' Access-Control-Allow-Origin ' khi cờ thông tin xác thực là đúng. Do đó, nguồn gốc 'http://localhost:8100' không được phép truy cập. Chế độ thông tin đăng nhập của XMLHttpRequest được kiểm soát bởi thuộc tính withCredentials.
Nếu tôi nhận xét dòng với app.use(cors());
tôi nhận được:
XMLHttpRequest không thể tải http://localhost:9000/socket.io/?EIO=3&transport=polling&t=LE-Cwb8. Không có tiêu đề 'Access-Control-Allow-Origin' có trên tài nguyên được yêu cầu . Xuất xứ 'http://localhost:8100' do đó không được phép truy cập . Câu trả lời đã có mã trạng thái HTTP 404.
Vì vậy, rõ ràng máy chủ của tôi là lên và chạy ok nhưng
Cảm ơn đã phản ứng, bây giờ tôi có được 'Credentials cờ là 'true', nhưng 'Access-Control-Allow-Credentials' tiêu đề là ''' –
Cảm ơn bạn, đã làm các trick :). Tôi mới đến đây –
Một câu hỏi mặc dù, bây giờ tôi nhận được 404 khi trình duyệt gọi url mặc dù ... Nếu tôi loại bỏ giải pháp của bạn tôi nhận được lỗi cors ... Đó là khó hiểu ... –