localhost 在 Angular 后端 api 之前附加自身

Posted

技术标签:

【中文标题】localhost 在 Angular 后端 api 之前附加自身【英文标题】:localhost appending itself before the backend api in angular 【发布时间】:2020-02-24 10:36:51 【问题描述】:

我已将我的后端放到 aws 中。后端网址在邮递员中工作正常。

但是当我将我的后端 url 放入 angular 服务时,locahost 会被附加到它前面。

我该如何解决这个问题。

后端网址:api.angularapp.site

在我的服务中,我这样称呼:


private url = "api.angularapp.site/api/v1";

public signupFunction(data):Observable<any>

    const params=new HttpParams()
    .set('firstName', data.firstName)
    .set('lastName', data.lastName)
    .set('mobileNumber', data.mobile)
    .set('email', data.email)
    .set('password', data.password)
    .set('gender',data.gender)
    .set('profilePic',data.profilePic);

    return this.http.post(`$this.url/users/signup`,params);
  //end of signup function

但是当我运行应用程序并尝试注册时,我得到控制台错误:

http://localhost:4200/api.angularapp.site/api/v1/users/signup404(未找到)

为什么这个 localhost 会附加到后端调用 url。

在网址之前 ** 私人网址 = "http://localhost:3000/api/v1";** 在那种情况下,角度很好地连接到后端。 但现在我不知道它是如何在 start 中附加 angular locahost url

请帮忙

【问题讨论】:

【参考方案1】:

你需要为服务提供一个完整的限定url,否则angular会尝试做一个相对url。

将url变量改为

private url = "http://api.angularapp.site/api/v1";

一切都应该工作。

【讨论】:

以上是关于localhost 在 Angular 后端 api 之前附加自身的主要内容,如果未能解决你的问题,请参考以下文章

如何修改 Angular 组件以从后端获取信息?

Angular2、NodeJS 和护照问题

Chrome 90 在 CORS 预检中向 Angular localhost 应用添加 https

Angular 2:第一个服务成功后的两个后端服务调用

Angular 2 应用程序部署在 JBOSS 6.4 eap 上,Java 服务作为后端

如何使用spring boot和angular 2登录