Запрос CORS не был выполнен, клиент webpack socket.io - PullRequest
0 голосов
/ 19 октября 2019

Я использую веб-пакет с socket.io-client(localhost:9000) на стороне клиента mi, и я пытаюсь подключиться к стороне сервера socket.io(localhost:3001) server

/// сторона сервера

const app = require("express")();

const http = require("http").createServer(app);
const cors = require('cors');
app.use(cors({ origin: '*' }));
app.use(function (req, res, next) {


 // Website you wish to allow to connect
  res.header('Access-Control-Allow-Origin', '*');

  // Request methods you wish to allow
  res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');

  // Request headers you wish to allow
  res.header('Access-Control-Allow-Headers', 'X-Requested-With,content-type');

  // Set to true if you need the website to include cookies in the requests sent
  // to the API (e.g. in case you use sessions)
  res.setHeader('Access-Control-Allow-Credentials', false);

  // Pass to next layer of middleware
  next();
});

var path = require("path");
var cookieParser = require('cookie-parser');  

app.use(cookieParser());
app.set('public', path.join(__dirname, 'public'));

const io = require('socket.io')(http,{
  allowUpgrades: true,
  transports: [ 'polling', 'websocket' ],
  pingTimeout: 9000,
  pingInterval: 3000,
  cookie: 'mycookie',
  httpCompression: true,
  log: false,
  agent: false,
  origins: '*:*',

});

//io.set({ origins: 'localhost:9000'});

io.on('connection', function(socket){
  console.log('a user connected');
  socket.on('disconnect', function(){
    console.log('user disconnected');
  });
});    

http.listen(3001, function(){
  console.log(`listening on ${3001}`);
}); 

Имоя клиентская сторона выглядит следующим образом:

import _ from 'lodash';
import 'bootstrap';
import 'bootstrap/js/dist/util';
import 'bootstrap/js/dist/dropdown';
import Bootstrap from 'bootstrap/dist/css/bootstrap.css';
import '../styles/style.css';
import $ from 'jquery';
window.jQuery = $;

import io from 'socket.io-client';

var socket = io('https://localhost:3001');
//{transports: ['websocket', 'polling', 'flashsocket']}

    socket.on('connect', () => {
 // Get a list of all files, previously delete existing
        // elements to avoid duplicates
        console.log(socket.connected); 
        socket.on('file', (files) => {
         console.log('Connected')

         })
   })

Всегда дайте мне: запрос перекрестного источника заблокирован: та же политика происхождения запрещает чтение удаленного ресурса в https://localhost:3001/socket.io/?EIO=3&transport=polling&t=MtbNn1m. (причина: запрос CORS не был выполнен успешно)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...