通过服务器上的http请求的URL必须是绝对服务器呈现

时间:2017-10-18 11:47:07

标签: angular angular-universal

我正在使用Angular 4 CLI + Universal,我收到了以下错误消息。我记得它也适用于相对路径,但我该怎么办?

  

错误错误:服务器上通过Http请求的URL必须是绝对的。   网址:/ api / countNewsFeedToday       在validateRequestUrl(/Users/Picchu/Documents/em/node_modules/@angular/platform-server/bundles/platform-server.umd.js:99:15)

HTTP请求呼叫示例

setMyProperty()

的package.json

 ngOnInit() {



        this.http.get('/isUserLogin').map((res: any) => res.json())
        .subscribe(
        (res: any) => {
          this.data = res;
          if (res == 'notLoggedIn') {


          } else {
            this.profileId = this.data._id;

            if(this.data.local){
            this.nameMain = this.data.local.nameMain;
            }


          }
        });
    }

1 个答案:

答案 0 :(得分:0)

如错误所述,服务器端请求的URL必须是绝对的。它不适用于相对网址。

一个好的解决方案是使用Angular Http Interceptors拦截服务器端的所有http请求,并使它们像http://localhost:PORT/isUserLogin一样绝对。