0

我正在使用 node js 中的 koa 框架编写一个全栈应用程序作为后端,使用 angular 4 作为前端。问题是,当我通过前端在后端 API 上发出发布请求时(即当我想登录时),我得到一个带有文本“发生网络错误”和代码 19 的 DOM 异常。后端本身工作正常(我已经用邮递员测试过)。这是我的 Angular 代码片段,其中包括我发出请求的服务方法和处理响应的组件方法。

服务方式:

authenticate(username: string, password: string): Observable<boolean> {
    return this.http.post('localhost:3000/api/sign-in',
        JSON.stringify({ username: username, password: password }))

        .map((response: Response) => {
          let token = response.json().token;
          if (token) {
            this.token = token;
            localStorage.setItem('currentUser', JSON.stringify({ username: username, token: token}));
            return true;
          } else {
            return false;
          }
    });
  }

组件方法:

logIn(): void {
    this.authenticationService.authenticate(this.username, this.password)
    .subscribe(result => {
      if (result == true) {
        this.router.navigate(['/people']);
      } else {
        console.log('Username or password incorrect!');
      }
    });
  }
4

1 回答 1

1

哦,你忘了在你的 URL 中指定协议,它应该是这样的:

this.http.post('http://localhost:3000/api/sign-in', ...
于 2017-10-10T01:21:35.527 回答