角度间隔响应
学习使用HTTPClient获取HTTP请求的完整响应。
obs
响应
这是我以前没有使用过的小事。您可以使用该方法轻松获取HTTP请求的完整响应obs
选择与httpclient.
在角度。
这是一个例子:
@可注射的()出口类用户服务{私人的只读API_URL.='https://reqres.in/api';构造函数(私人的httpclient:httpclient.){}创建用户(用户:用户):可观察到的<用户>{返回这个。httpclient。帖子<用户>(`$ {这个。API_URL.}/用户`那用户那{obs:'响应'});}}
通过指定响应
字符串常数角度将返回httpresponse.
目的:
{“标题”:{“标准化名称”:[]那“lazyupdate”:空值}那“状态”:201.那“Statustext”:“好”那“URL”:“https://reqres.in/api/users”那“好”:真正那“类型”:4.那“身体”:{“ID”:1那“名字”:“Brian”那“姓”:“爱”那“创造”:“2018-08-31T02:28:09.162z”}}
查看以下StackBlitz,显示使用观察响应
:
obs
活动
此外,您可以观察HTTP READY状态事件使用的请求活动
字符串常量:
@可注射的()出口类用户服务{私人的只读API_URL.='https://reqres.in/api';构造函数(私人的httpclient:httpclient.){}创建用户(用户:用户):可观察到的<用户>{返回这个。httpclient。帖子<用户>(`$ {这个。API_URL.}/用户`那用户那{obs:'事件'那eportprogress.:真正});}}
注意:
- 首先,我指定了
obs
选择与活动
字符串常量。 - 其次,我已经设置了
eportprogress.
选择真正
。
您可能需要扼杀您的网络请求以查看进度。
起初,你应该看到类型
设置为0:
{“类型”:0.}
这表示该请求尚未发送。接下来,您应该看到已打开的事件:
{“类型”:1那“加载”:46.那“总”:46.}
最后,类型
应该4.
- 完成:
{“标题”:{“标准化名称”:[]那“lazyupdate”:空值}那“状态”:201.那“Statustext”:“好”那“URL”:“https://reqres.in/api/users”那“好”:真正那“类型”:4.那“身体”:{“ID”:1那“名字”:“Brian”那“姓”:“爱”那“创造”:“2018-08-31T02:45:28.882z”}}
看看这个: