Angular 5+发布到nodejs错误

时间:2018-03-23 18:48:55

标签: angular post http-status-code-404 postman

所以,我已经看了一些答案,并尽可能地完成我所尝试的内容。作为一条新鱼,我确实先看了,但没有找到满意的答案。

首先是问题所在。我正在尝试将id,密码发布到一个名为' / login' 的端点,该端点在节点上运行。我已经使用postman运行端点并且它确实有效..我已经尝试将httpOptions头设置为json(谢谢stackoverflow)但我仍然得到404.我为此目的编码在标准控制台日志中查看在哪里流量是,它甚至没有到达route.post ..

无法加载http://localhost:3000/login:预检的响应包含无效的HTTP状态代码404.

首先是有棱角的一面。作为服务

public login(user, passwd) {
console.log('url %s user %s passwd %s', this.url, user, passwd);

const httpOptions = {
  headers: new HttpHeaders({
    'Content-Type': 'application/json'
  })
};

this.http.post(this.url, {
    id: user,
    password: passwd
  },
  httpOptions)

  .subscribe(
    res => {
      console.log(res);
    },
    err => {
      console.log('Error occured %o', err);
    }
  );
 }

现在节点代码..我也放了一个到这里以防万一我出错了 - 我甚至没有得到控制台日志。

app.route('/login')
.get(sessionChecker, (req, res) => {
    console.log ('login get');
    res.json({login : false});
    res.sendFile(__dirname + '/public/login.html');
})
.post((request, response) => {

    console.log("sesssion is %o", request.session);

    // taken from personal code I wrote a few years back
    console.log('request %o', request.query);
    let username = request.query.id;
    let password = request.query.password;

    console.log('user %s pass %s', username, password);

我确实一直到我的404网址找不到代码。

// route for handling 404 requests(unavailable routes)
app.use(function (req, res, next) {
console.log(' some sort of error ');
res.status(404).send("Sorry can't find that!")
});

我从这里得到消息"抱歉找不到"如果我给出了错误的网址,我会期待的。

1 个答案:

答案 0 :(得分:0)

事实证明这有一个答案,它包含在2 stackoverflow

的最少投票回答中

十亿谢谢这家伙。简而言之,将以下内容添加到服务器端CORS脚本..

pageload() {
    this.ShowLoader = true;

    for (let i = 0; i < 1000; i++) {

       const num = ((i / 1000) * 100);
      setTimeout(() => {
        this.myCustomValue = num;
      }, 500);
    }
}