学习鸿蒙,我学到的东西与浅显理解(1-7、网络请求)

103 阅读1分钟

网络请求

module.json5 配置文件中,添加网络访问权限

"module" : {
  "requestPermissions": [
    {
      "name": "ohos.permission.INTERNET",
      "reason": "$string:dependency_reason",
    }
  ]
}

开发步骤

 // 导入请求的库
 import { http } from '@kit.NetworkKit'
 
 // 创建请求对象
 let httpClient = http.createHttp()
 
 // 请求的配置
 const data = await httpClient.request(url, {
   method: http.RequestMethod.POST,
   extraData: {
     params: 'value'
   },
   header: {
     'Content-Type': 'application/json'
   },
   readTimeout: 60 * 1000,
   expectDataType: http.HttpDataType.STRING, // 指定返回数据类型
   usingProtocol: http.HttpProtocol.HTTP1_1 // 指定使用的协议
   // 更多参数略
 })
 
 // 请求返回的数据结构
 data: {
   responseCode: http.ResponseCode // HTTP 状态码
   result // 响应数据
   resultType // 返回值类型
   header // 响应头
   cookies // Cookie
 }
 
 // 注意:httpClient 不能复用
 // 请求完成后,应主动销毁 httpClient 对象
 httpClient.destroy() // 也可用作中断请求
 

 // 以上就是发起一个请求的示例
 // 下面是其它的方法:
 
 // 发起流式请求
 httpClient.requestInStream()

 // 订阅请求过程中的事件,例如流式响应数据
 httpClient.on() 
 
 // 取消订阅请求过程中的事件
 httpClient.off()

系列文章


参考资料


写在最后

  • 不是教程,只是学习记录
  • 包含了一些自己的理解,一边学一边写的,难免有不对的地方
  • 写出来希望能与大家探讨,看到有错误的地方,望大家指正~