настройки Cors в https - PullRequest
       7

настройки Cors в https

0 голосов
/ 02 ноября 2018

Мои приложения-узлы нормально работают с http, но в https он выдает ошибку cors и моя ссылка на ssl-порт (https://www.example.com:3001) работает нормально и загружается). Таким образом, настройки ssl в порядке, но проблема cors не позволяет отправить форма ..

Ниже приведен код для http, который работает нормально .. Может кто-нибудь проверить и исправить проблему ..

var express = require('express');

var DataController = require('./user/DataController');
var UserController = require('./user/UserController');
var db = require('./database/dbbase-db'); 
var cors = require('cors');
var app = express();
app.use(cors());

app.use(function(req, res, next) {
res.setHeader("Access-Control-Allow-Origin", "https://www.example.com");
res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.setHeader('Access-Control-Allow-Methods', 'POST');
res.setHeader('Access-Control-Allow-Credentials', true);
next();
});


app.use('/user', UserController);
app.use('/data', DataController);
app.get('/', function(req, res){
res.send("Welcome");
});

var https = require('https');
var fs = require('fs');

var options = {
  key: fs.readFileSync('key.key'),
  cert: fs.readFileSync('cert.crt'),
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("Welcome");
}).listen(3001);

// app.listen(3001, function () {
// console.log('Welcome')
// })

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

Наконец-то это сработало и вот обновленный код:

var express = require('express');
var DataController = require('./user/DataController');
var UserController = require('./user/UserController');
var db = require('./database/database-db'); 
var cors = require('cors');
var app = express();
app.use(cors());

app.use(function(req, res, next) {
res.setHeader("Access-Control-Allow-Origin", "https://www.example.com");
res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.setHeader('Access-Control-Allow-Methods', 'POST');
res.setHeader('Access-Control-Allow-Credentials', true);
next();
});

app.use('/user', UserController);
app.use('/data', DataController);
app.get('/', function(req, res){
res.send("Welcome");
});

// This settings are for HTTPS, SSL web applications

var https = require("https");
var fs = require("fs");

var options = {
  key: fs.readFileSync("key.key"),
  cert: fs.readFileSync("cert.crt")
 };
https.createServer(options,app).listen(3001);
console.log('Welcome')



// // This settings are only for HTTP sites

// var http = require("http");
// var fs = require("fs");

// http.createServer(app).listen(3001);
// console.log('Welcome')
0 голосов
/ 02 ноября 2018

Проверьте порты, если есть правила брандмауэра или есть другие списки на том же порту

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