Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js server.js文件中的Cors代理问题(react、express、sql)_Node.js_Sql Server_Reactjs_Express_Cors - Fatal编程技术网

Node.js server.js文件中的Cors代理问题(react、express、sql)

Node.js server.js文件中的Cors代理问题(react、express、sql),node.js,sql-server,reactjs,express,cors,Node.js,Sql Server,Reactjs,Express,Cors,我用mssql和express制作了一个基本的fullstack网站。最初,get路由工作,但在实现post路由后,它们已停止 我相信我收到了一个cors错误,这是错误的 Proxy error: Could not proxy request /admin-view-users from localhost:3000 to http://localhost:5000/. [1] See https://nodejs.org/api/errors.html#errors_common_syste

我用mssql和express制作了一个基本的fullstack网站。最初,get路由工作,但在实现post路由后,它们已停止

我相信我收到了一个cors错误,这是错误的

Proxy error: Could not proxy request /admin-view-users from localhost:3000 to http://localhost:5000/.
[1] See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (ECONNREFUSED).

myserver.js

const express = require("express");
const sql = require("mssql");
var cors = require("cors");
const path = require("path");
var bodyParser = require("body-parser");
const port = process.env.PORT || 5000;

const app = express();
app.use(cors());

app.use(express.json());

const config = {
  user: "sas",
  password: "Mypassword456",
  server: "DEVSQL_2014", // You can use 'localhost\\instance' to connect to named instance
  database: "TestDBWebsite"
};

//AdminView users just pulls the users from the database

app.get("/admin-view-users", cors(), function(req, res) {
  // connect to your database
  sql.connect(config, function(err) {
    if (err) console.log(err);

    // create Request object
    var request = new sql.Request();

    // query to the database and get the records
    request.query("select * from Users2 ", function(err, recordset) {
      if (err) console.log(err);

      // send records as a response

      res.json(recordset);

      res.end();
    });
  });
});

app.get("/admin-view-users", function(req, res) {
  // connect to your database
  sql.connect(config, function(err) {
    if (err) console.log(err);

    // create Request object
    var request = new sql.Request();

    // query to the database and get the records
    request.query("select * from Users2 ", function(err, recordset) {
      if (err) console.log(err);

      // send records as a response

      res.json(recordset);

      res.end();
    });
  });
});

app.get("/user-questions", function(req, res) {
  // connect to your database
  sql.connect(config, function(err) {
    if (err) console.log(err);

    // create Request object
    var request = new sql.Request();

    // query to the database and get the records
    request.query("select * from Questions ", function(err, recordset) {
      if (err) console.log(err);

      // send records as a response

      res.json(recordset);
    });
  });
});

//

var jsonParser = bodyParser.json();

app.use(express.bodyParser());

app.post("/admin-Add-Users", jsonParser, function(request, response) {
  var email = req.body.email;
  var password = req.body.password;

  var request = new sql.Request();
  // query to the database and get the records

  console.log(email, password); // your JSON
  // echo the result back
  console.log(request.body);

  request.query(
    "insert into Login (email, password) values ('" +
      email +
      "','" +
      password +
      "')",
    function(err, recordset) {
      if (err) console.log(err);
    }
  );
  response.send({ message: "Success" });
});

app.listen(port, () => `Server running on port ${port}`);
我已经包括了“app.use(cors());”,我认为它可以解决这个问题,但它没有


如果可以的话,请给出建议。

我想到的第一件事是双重使用CORS

您将它放到中间件堆栈中,然后在此处再次调用它:

app.get("/admin-view-users", cors(), function(req, res) {
请仅尝试使用一次: