已经在my express for node.js中设置了cors,但仍然给出了关于cors的相同错误

已经在my express for node.js中设置了cors,但仍然给出了关于cors的相同错误,node.js,ajax,express,cors,Node.js,Ajax,Express,Cors,我已经试着在我的express应用程序中设置cors,但它仍然提供 XMLHttpRequest无法加载http://localhost:3000/api/login. 对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头。起源'http://localhost因此,不允许访问。 我正在尝试为我的登录api做一个ajax请求以进行实验。如果输入正确,则输出“登录成功”,如果输入不正确,则输出“登录ID或密码无效”。 我的代码 这是我的ajax请求服务器端代码 func

我已经试着在我的express应用程序中设置cors,但它仍然提供

XMLHttpRequest无法加载http://localhost:3000/api/login. 对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头。起源'http://localhost因此,不允许访问。

我正在尝试为我的登录api做一个ajax请求以进行实验。如果输入正确,则输出“登录成功”,如果输入不正确,则输出“登录ID或密码无效”。
我的代码

这是我的ajax请求服务器端代码

function login(){

var username = $('#userID').val();
var password = $('#Password').val();
var postData = { "userID": username, "Password": password };
var postJSON = JSON.stringify(postData);

$.ajax({
    url: "http://localhost:3000/api/login", // server url
    type: "POST", //POST or GET
    contentType: "application/json",
    data: postJSON, // data to send in ajax format or querystring format
    dataType : "json",
    success: function(response) {
        alert('success');
        console.log(response);
        $("#result").val(response);
        window.location.replace("http://localhost/index.html");
    },
    error: function(response) {
        alert('error');
    }
    });
  }
至于我的html代码,我只是

<input class="button" type="submit" id="submit" value="Log In" 
onclick="login()"/>
      <div id="result"></div>
我在cors里放错东西了吗?我已经安装在npm中,并按照npm cors本身的说明进行操作,但仍然给出这个错误,说我没有启用cors。感谢您的帮助!谢谢

更新 在遵循Abhyudit Jain的解决方案后,我再也不会出现这种错误,但我看到的是


你知道这是什么样的错误吗?

是的,你做错了什么。你在使用路线后使用了cors


如果将
app.use(cors())
移动到
app.use('/api',routes)
之前,它将正常工作。

是的,您做错了什么。你在使用路线后使用了cors


如果您将
app.use(cors())
移动到
app.use('/api',routes)
之前,它将正常工作。

我根据您的解决方案进行了更新,它正常工作,但现在我遇到了另一个错误,没有说明它是什么。除非您描述错误,否则我如何帮助您?顺便说一句,如果你的问题得到了回答,请接受这个正确答案。@ongkongta你把症状放在这里了。通过在每个步骤中放置console.log()来诊断问题,并查看问题可能在哪里-前端、登录路径、中间件等。如果无法解决问题,则将其作为新问题发布。顺便说一句,您没有发布登录路径代码。我根据您的解决方案进行了更新,并且成功了,但是现在我遇到了另一个错误,没有说明是什么。除非您描述错误,否则我如何帮助您?顺便说一句,如果你的问题得到了回答,请接受这个正确答案。@ongkongta你把症状放在这里了。通过在每个步骤中放置console.log()来诊断问题,并查看问题可能在哪里-前端、登录路径、中间件等。如果无法解决问题,则将其作为新问题发布。顺便说一下,您没有发布登录路径代码。
<input class="button" type="submit" id="submit" value="Log In" 
onclick="login()"/>
      <div id="result"></div>
Request URL:http://localhost/
Referrer Policy:no-referrer-when-downgrade
Request Headers
Provisional headers are shown
Content-Type:application/x-www-form-urlencoded
Origin:http://localhost
Referer:http://localhost/
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 
(KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
Form Data
view source
view URL encoded
userID:SDD
Password:KKK