在Angular 5中,使用HttpClient发送HTTP请求以请求rest api时,可能会出现无法正常工作的情况。在大多数情况下,问题通常与API的响应格式有关。为了解决这个问题,可以尝试将API响应转换为可接受的格式,例如JSON或XML。以下是一个使用HttpClient发送带有请求头的HTTP GET请求的示例:
import { Injectable } from '@angular/core'; import { HttpClient, HttpHeaders } from '@angular/common/http'; import { Observable } from 'rxjs/Observable'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/catch'; import 'rxjs/add/observable/throw';
@Injectable() export class DataService {
private apiUrl = 'https://api.github.com/users';
constructor(private http: HttpClient) { }
getUsers(): Observable${this.apiUrl}
, { headers })
.map(response => response)
.catch(error => Observable.throw(error.statusText));
}
}
在这个示例中,我们设置了正确的请求头并将请求结果转换为可用的JSON格式。这将确保您的API请求在Angular 5中正常工作。