У меня есть надстройка Tampermonkey, связывающаяся с моим локальным сервером разработки через Websockets. Это не работает и вызывает следующую ошибку:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://127.0.0.1:3000/socket.io/?EIO=3&transport=polling&t=N9Bvvb3. (Reason: CORS request did not succeed).
Итак, я попробовал первые три аддона, найденные поиском CORS :
Ни один из них вроде работает. Как я могу это исправить?
Я знаю тех, кто занимается безопасностью CORS. Поскольку мое программное обеспечение предназначено для разработчиков и используется только локально, оно мне не нужно. Итак, я ищу решение easy , позволяющее моему скрипту tampermonkey подключаться к localhost при доступе к веб-странице, например https://example.com.
Я также пробовал разные вещи на стороне сервера, чтобы CORS работал правильно, например this или this , но по-прежнему возникает ошибка.
Server
let app = express();
app.use(express.static(path.resolve(`${__dirname}/../dist`)));
const certDir = "certs";
let httpOpts = {
key: fs.readFileSync(`${certDir}/localhost.key`),
cert: fs.readFileSync(`${certDir}/localhost.crt`),
requestCert: false,
rejectUnauthorized: false
};
var http = require("https").createServer(httpOpts, app);
var io = require("socket.io")(http);
Tampermonkey клиент scirpt
const localDevUrl = "https://127.0.0.1:3000";
this.socket = io(localDevUrl, { secure: true });