使用http请求网络地址

通过HTTP发起一个数据请求

HarmonyOS
2024-05-28 20:53:41
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
peterlee99

使用的核心API

http请求API

核心代码解释

http请求接口通过POST和PUT请求获取网页中表格数据,请求部分demo如下:

requestHttp(url: string, method: http.RequestMethod): Promise<string> { 
    return new Promise((resolve, reject) => { 
  
      let httpRequest = http.createHttp(); 
  
      // 用于订阅HTTP响应头,此接口会比request请求先返回 
      httpRequest.on('headersReceive', (header) => { 
        console.info(`url=${url} is error ${JSON.stringify(header)}}`); 
        // LogUtil.info(TAG, 'header: ' + JSON.stringify(header)); 
      }); 
  
      //http请求接口 
      httpRequest.request( 
        url, 
        { 
          // 可选,指定返回数据的类型 
          expectDataType: http.HttpDataType.STRING, 
          // 可选,默认为http.RequestMethod.GET 
          method: method, 
          // 开发者根据自身业务需要添加header字段 
          header: { 
            'content-type': 'multipart/form-data', 
          }, 
          extraData:{ 'test1' : '122334455' }, 
          usingCache: false, // 可选,默认为true 
          priority: 1, // 可选,默认为1 
          connectTimeout: 10000, // 可选,默认为60000ms 
          readTimeout: 10000, // 可选,默认为60000ms 
        }, (err, data) => { 
        console.info(`------------ requestUrl: ${JSON.stringify(url)}----------`); 
        if (!err) { 
          // data.result为HTTP响应内容,可根据业务需要进行解析 
          this.result = `---------- connect Result : ---------- 
responseCode:${JSON.stringify(data.responseCode)} 
header:${JSON.stringify(data.header)} 
cookies:${JSON.stringify(data.cookies)} 
          -------------------------------------------`; 
          console.info(`Result:${JSON.stringify(data.result)}`); 
          console.info(`responseCode:${JSON.stringify(data.responseCode)}`); 
          console.info(`header:${JSON.stringify(data.header)}`); 
          console.info(`cookies:${JSON.stringify(data.cookies)}`); 
  
          resolve(JSON.stringify(data.result)); 
        } else { 
          this.result = `url=${url} is error ${JSON.stringify(err)}}`; 
          console.info(`url=${url} is error ${JSON.stringify(err)}}`); 
          httpRequest.off('headersReceive'); 
  
          reject(JSON.stringify(err)); 
        } 
      }) 
    }); 
} 
 

注明适配的版本信息

  • IDE:DevEco Studio 3.1.0.501
  • SDK:HarmoneyOS 3.2.14.6
分享
微博
QQ
微信
回复
2024-05-29 21:58:55
相关问题
网络地址建立socket连接
269浏览 • 1回复 待解决
使用http模块实现数据流请求
372浏览 • 1回复 待解决
网络请求使用gzip压缩数据
596浏览 • 1回复 待解决
鸿蒙http请求如何使用cookie管理器
251浏览 • 1回复 待解决
http请求支持patch方法
558浏览 • 1回复 待解决
使用http发送xml报文格式的请求
515浏览 • 1回复 待解决
http request 请求不到接口数据
3460浏览 • 1回复 待解决
http 请求一直报 2300058
521浏览 • 0回复 待解决
HTTP GET请求时如何传递参数?
1898浏览 • 1回复 待解决
websocket和http数据请求示例
293浏览 • 1回复 待解决
http 请求 如何cookie持久化?
716浏览 • 1回复 待解决
应用中http请求响应2300023
977浏览 • 1回复 待解决
网络请求抓包以及日志
283浏览 • 1回复 待解决
http请求中下载文件报错2300023
768浏览 • 1回复 待解决
鸿蒙JS开发HTTP请求如何解析
1393浏览 • 0回复 待解决