问题是由于Angular应用程序默认使用其开发服务器(localhost:4200)而不是后端服务器(localhost:8080)发送Http请求导致的。为了解决这个问题,需要在服务中显式指定请求的目标地址。
首先,需要在服务的构造函数中注入HttpClient:
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class MyService {
constructor(private http: HttpClient) { }
...
}
然后,在服务方法中使用HttpClient来发送Http请求,并指定目标地址:
@Injectable({
providedIn: 'root'
})
export class MyService {
constructor(private http: HttpClient) { }
...
getData(): Observable {
const url = 'http://localhost:8080/my-api-endpoint';
return this.http.get(url);
}
}
这样,服务将使用指定的目标地址(localhost:8080)发送Http请求,而不是默认的开发服务器地址(localhost:4200)。