如何使用标头、有效负载和正文制作 httpclient 获取请求?角度 API
Posted
技术标签:
【中文标题】如何使用标头、有效负载和正文制作 httpclient 获取请求?角度 API【英文标题】:How to make a httpclient get request with header, payload and body? Angular API 【发布时间】:2021-08-04 10:30:03 【问题描述】:我需要使用 get 方法、header、payload 和 body 调用 API。 如果可能的话,请帮我举一个例子。
【问题讨论】:
你试过什么?按照角度文档angular.io/guide/http进行分步实施 我在关注文档,但我是初学者,在那里,我没有找到在哪里以及如何做有效载荷部分 你这个角度学习的视频youtube.com/watch?v=k5E2AVpwsko 您确定需要带有有效负载正文的 GET 请求吗?虽然没有明确禁止这是非常罕见的...... 【参考方案1】:负载是否发送到 API?然后这是一个 POST 调用,有效负载进入正文。例如:
const payloadUrl = "some_url";
const body =
payload: "payload";
postPayload(): Observable<any>
return this.http.post<any>(this.payloadUrl, body, httpOptions)
.pipe(
catchError(this.handleError('error', error))
);
【讨论】:
我怎样才能将 coduser: integer 放入有效载荷中,好吗?我可以把身体(字段)放在哪里const body = coduser: integer;
body
进入 this.http.post(this.payloadUrl, body)【参考方案2】:
您可以使用 $q 来解析 Promise 并使用 $http 发送带有标头的 get 请求。
var deferred = $q.defer();
var req =
method: 'GET',
url: "some url",
headers:
;
$http(req).success(function (res, status, headers, config)
deferred.resolve(res);
).error(function (res)
deferred.reject(res);
);
【讨论】:
【参考方案3】:你可以这样试试
const userData: any =
example1: example1,
example2: example2,
example3: example3,
;
this.apiCall(userData);
apiCall(userData)
this.http.get<any>('api_link', userData).subscribe(data =>
console.log('response: ', data);
);
【讨论】:
以上是关于如何使用标头、有效负载和正文制作 httpclient 获取请求?角度 API的主要内容,如果未能解决你的问题,请参考以下文章