angular - Angular 2. 进行服务调用以等待 API 返回数据
问题描述
Angular服务调用如下图,
SearchAssets(searchAssetsModel: SearchAssetsModel): Observable<any> {
return this.httpClient.post<any>(this.webApiUrl + "SearchAssets/SearchAssets/", searchAssetsModel);
}
在我的组件中,我订阅了如下所示的服务,
this.searchAssetsService.SearchAssets(searchAssetsModel).subscribe(
(data) => {}
)
当然 API 会在服务调用 2-3 分钟后返回数据,但现在的问题是 Angular 服务没有等到 API 返回数据。等待 1.5 分钟后会给出 500 错误响应。
解决方案
你下面的说法是不正确的。
...问题是 Angular 服务没有等到 API 返回数据。等待 1.5 分钟后会给出 500 错误响应。
500 错误是来自您服务器端的内部错误,这意味着您的服务器端存在错误。可能是编码问题,或者您的 api 在长时间会话中返回错误。
AngularHttp
服务与您的 500 错误无关。您可以通过使用不同的客户端来检查 api 结果(类似于Postman
)来对此进行测试。
无论如何,一旦你修复了服务器端,问题就消失了。
查看此 developer.mozilla.org 链接,了解有关 500 错误的更多详细信息。下面的这段文字来自这个链接:
超文本传输协议 (HTTP) 500 内部服务器错误服务器错误响应代码表示服务器遇到了阻止它完成请求的意外情况。
推荐阅读
- reactjs - 找不到文件:'index.js' 与磁盘上的相应名称不匹配:'.\node_modules\Victory\es\victory'
- electron - 电子隐藏工作窗口无法正常工作
- javascript - 在reactjs中给定特定条件获取数组的值
- regex - 正则表达式匹配大括号之间的特定字符串
- shell - 随机 Zsh 提示
- r - 来自地狱的约会时间。在R中分离日期和时间
- python - django 创建具有空外键的对象
- json - 如何将环境变量添加到 app.json 文件
- c - 如何在介子交叉文件中指定库及其包含
- django - 如何通过 Django EmailMessage 将存储在云中的图像作为附件发送