Angular 2+ http.get()处于待处理状态

时间:2019-02-26 21:11:53

标签: node.js angular express

我有一个MEAN应用。 角CLI:7.1.4 节点:10.1.0 操作系统:win32 x64 角度:7.1.4

最近,来自HttpClientModule的http请求被卡住并且没有发布到节点服务器: Img of chrome dev tools xhr pending request

nodejs服务器(在本地和生产环境中运行(azure Web应用程序)并不表示它曾经收到过该请求。这不一致地发生。有时完成,有时挂起。 这是从Angular到服务器的testConnection调用的片段:

角度服务

F10

角度组件:

import { Injectable } from '@angular/core';
import { HttpClient, HttpErrorResponse } from '@angular/common/http';
import { throwError } from 'rxjs';
import { catchError } from 'rxjs/operators';
import { environment } from '../../environments/environment';
const Headers: any = { withCredentials: true, responseType: 'json', headers: { 'Content-Type': 'application/json' } };

@Injectable({
  providedIn: 'root',
})
export class UserService {
  constructor(private _http: HttpClient) {}
    loginStatus() {
      return this._http.get(`${environment.serverURL}/api/login-status`, Headers).pipe(catchError(this.handleError));
    }}

节点/表达式:

ngOnInit() {
this._userSvc.loginStatus().subscribe(
(result:any)=>{console.log(result)},
(error:any)=>{console.log(error)})
}

节点正在使用护照进行身份验证

不要与护照问题捆绑在一起,因为它并不总是这种失败的途径。我有一些简单的路由,没有验证,只是返回了一些失败的文本。

我尝试修改我的CORS选项,但只能阻止自己。 有时重新启动服务器会允许请求完成,但并非总是如此。

1 个答案:

答案 0 :(得分:1)

我发现了问题,很尴尬地说这是mssql的SQL连接字符串中的问题。 我有((config,error)=> {})而不是正确的(config,(err)=> {});这是在护照的反序列化用户功能中。没有什么比查看数千行代码来发现一个小问题更重要的了。

相关问题