鸿蒙开发之网络请求

//需要导入http头文件
import http from '@ohos.net.http'

  //请求地址
  url: string = 'http://apis.juhe.cn/simpleWeather/query'

    Text(this.message)
          .maxFontSize(50)
          .minFontSize(10)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            console.log('======请求开始')
           let req = http.createHttp()
           req.request(this.url,{
                
             //请求方式
              method: http.RequestMethod.POST,
            //请求参数
              extraData:{
                'city':'北京',
                'key':this.reqKey
              }
            })
                //结果回调
              .then((value: http.HttpResponse) => {
              console.log('======请求结束')
              this.message = JSON.stringify(value.result)
            })

          })

还有一种写法,请求结果在第三个参数重回调回来

 Text(this.message)
          .maxFontSize(50)
          .minFontSize(10)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            console.log('======请求开始')
           let req = http.createHttp()
            req.request(this.url,{
              method: http.RequestMethod.POST,
              extraData:{
                'city':'北京',
                'key':this.reqKey
              }
               //请求结果回调
            },(error,data) => {
              console.log('======请求结束')
              this.message = JSON.stringify(data.result)
            })
      

          })

过程还是比较好理解的,

  1. 创建一个http对象
  2. 然后用这个对象通过request方法发起请求

            2.1 第一个参数是请求的url,

            2.2 第二个是请求的配置,可以配置请求是post、get、delete等,还有请求的参数等,

            2.3 第三个参数是请求结果的回调,回调的data是 http.HttpResponse类型

注意,需要在module.json5文件中配置网络请求权限。

如果需要中断网络请求可以

req.destroy()

你可能感兴趣的:(鸿蒙)