我在使用@kit.NetworkKit时,使用let httpRequest = http.createHttp();创建了网络请求。在请求过程中如果想要取消本次请求,我没有找到cancel方法,是否应该调用httpRequest.destroy();?这个就是取消请求吗?
我看指南里在请求结束后才调用destroy(),但我在下载的示例代码里又没看到调用这个方法,所以这个destroy是必须调用的吗?如果不调用会有什么问题?
总结起来是两个问题:
1、取消本次请求,是否是直接调用httpRequest.destroy();即可?如果可以,那么取消后,再次请求时,是否需要重新调用 http.createHttp();?
2、在网络请求完成后,是否必须调用httpRequest.destroy();?如果不调用会怎样?
@kit.NetworkKit没有cancel方法,如果非要用,那可以试下rcp的请求方式:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/remote-communication-rcp-V5\#section14571174220320
如果要用@kit.NetworkKit,那destroy方法也可以满足。
需要注意直接调destroy,调用之后再次请求,是要重新 http.createHttp();
还有就是请求完没有说必须调用httpRequest.destroy(),可以多次使用发起请求,但是不destroy可能会发生内存不断上涨的情况,需要业务方做好管理。