asp网站数据库扫描,网站开发的评论界面模板,兔宝宝全屋定制衣柜官网,做购物网站小图标不得不承认#xff0c;年龄越大性格就越简单#xff0c;更喜欢安静#xff0c;不喜欢去了解别人#xff0c;也不想被了解#xff0c;只想静静的做自己喜欢的事…… 目录 一#xff0c;场景介绍 二#xff0c;接口说明 三#xff0c;http请求使用 一#xff0c;场景介绍… 不得不承认年龄越大性格就越简单更喜欢安静不喜欢去了解别人也不想被了解只想静静的做自己喜欢的事…… 目录 一场景介绍 二接口说明 三http请求使用 一场景介绍
应用通过HTTP发起一个数据请求支持常见的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。
二接口说明
HTTP数据请求功能主要由http模块提供。
使用该功能需要申请ohos.permission.INTERNET权限。
接口名描述createHttp()创建一个http请求。request()根据URL地址发起HTTP网络请求。requestInStream()10根据URL地址发起HTTP网络请求并返回流式响应destroy()中断请求任务。on(type: ‘headersReceive’)订阅HTTP Response Header 事件。off(type: ‘headersReceive’)取消订阅HTTP Response Header 事件。once(‘headersReceive’)8订阅HTTP Response Header 事件但是只触发一次。on(‘dataReceive’)10订阅HTTP流式响应数据接收事件。off(‘dataReceive’)10取消订阅HTTP流式响应数据接收事件。on(‘dataEnd’)10订阅HTTP流式响应数据接收完毕事件。off(‘dataEnd’)10取消订阅HTTP流式响应数据接收完毕事件。on(‘dataReceiveProgress’)10订阅HTTP流式响应数据接收进度事件。off(‘dataReceiveProgress’)10取消订阅HTTP流式响应数据接收进度事件。
三http请求使用
使用步骤为 从ohos.net.http.d.ts中导入http命名空间。调用createHttp()方法创建一个HttpRequest对象。调用该对象的on()方法可以根据业务需要订阅HTTP响应头事件、HTTP流式响应数据接收事件、HTTP流式响应数据接收进度事件和HTTP流式响应数据接收完毕事件。调用该对象的requestInStream()方法传入http请求的url地址和可选参数发起网络请求。按照实际业务需要可以解析返回的响应码。调用该对象的off()方法取消订阅相应事件。当该请求使用完毕时调用destroy()方法主动销毁。 简单的演示只是简单演示不作为项目使用
//1.从ohos.net.http.d.ts中导入http命名空间。
import http from ohos.net.http;export default class HttpClient {private request :http.HttpRequest | null null;/*** 2.创建HttpRequest* */createRequest(){this.request http.createHttp()}/** 3.用于订阅HTTP响应头此接口会比request请求先返回。* */registerOn(){this.request.on(headersReceive,(event){console.info(headersReceive---,event)})}/*** 4,调用该对象的request()方法传入http请求的url地址和可选参数发起网络请求* */requestMethod(url:string,options: http.HttpRequestOptions){this.request.request(url,options,(err,data){//5.解析请求结果if(err){//请求失败}else {//请求成功//返回码data.responseCode//返回结果data.result// 6.取消订阅HTTP响应头事件this.request.off(headersReceive);// 7.当该请求使用完毕时调用destroy方法主动销毁this.request.destroy();}})}/***** 创建请求Options* */createRequestOptions():http.HttpRequestOptions{let options:http.HttpRequestOptions{}//请求方式options.methodhttp.RequestMethod.GET// 当使用POST请求时此字段用于传递内容options.extraDataextraData// 可选指定返回数据的类型options.expectDataTypehttp.HttpDataType.STRING// 可选默认为trueoptions.usingCachetrue// 可选默认为1options.priority1//开发者根据自身业务需要添加header字段options.header[{Content-Type: application/json}]// 可选默认为60000msoptions.readTimeout60000// 可选默认为60000msoptions.connectTimeout60000// 可选协议类型默认值由系统自动指定options.usingProtocolhttp.HttpProtocol.HTTP1_1return options}}
调用者
import HttpClient from ./HttpTestexport default class HttpUse{private request:HttpClient | null nullrequestUrl(){this.request new HttpClient()this.request.createRequest()this.request.registerOn()this.request.requestMethod(https://www.baidu.com,this.request.createRequestOptions())}
} 注意 1需要添加网络权限 2使用时尽量 ①在work使用 ②taskpool使用 ③使用promise异步 防止阻塞主线程