?一、場景介紹
應(yīng)用通過HTTP發(fā)起一個(gè)數(shù)據(jù)請求,支持常見的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。
二、?接口說明
HTTP數(shù)據(jù)請求功能主要由http模塊提供。
使用該功能需要申請ohos.permission.INTERNET權(quán)限。
涉及的接口如下表,具體的接口說明請參考API文檔。
接口名 | 功能描述 |
---|---|
createHttp() | 創(chuàng)建一個(gè)http請求。 |
request() | 根據(jù)URL地址,發(fā)起HTTP網(wǎng)絡(luò)請求。 |
destroy() | 中斷請求任務(wù)。 |
on(type: 'headersReceive') | 訂閱HTTP Response Header 事件。 |
off(type: 'headersReceive') | 取消訂閱HTTP Response Header 事件。 |
once('headersReceive')8+ | 訂閱HTTP Response Header 事件,但是只觸發(fā)一次。 |
熟悉[鴻蒙]文檔
鴻蒙OS開發(fā) | 更多內(nèi)容↓點(diǎn)擊 | HarmonyOS與OpenHarmony技術(shù) |
---|---|---|
鴻蒙技術(shù)文檔 | 《鴻蒙NEXT星河版開發(fā)學(xué)習(xí)文檔》 |
三、request接口開發(fā)步驟
1.從@ohos.net.http.d.ts中導(dǎo)入http命名空間。
2.調(diào)用createHttp()方法,創(chuàng)建一個(gè)HttpRequest對象。
3.調(diào)用該對象的on()方法,訂閱http響應(yīng)頭事件,此接口會比request請求先返回??梢愿鶕?jù)業(yè)務(wù)需要訂閱此消息。
4.調(diào)用該對象的request()方法,傳入http請求的url地址和可選參數(shù),發(fā)起網(wǎng)絡(luò)請求。
5.按照實(shí)際業(yè)務(wù)需要,解析返回結(jié)果。
6.調(diào)用該對象的off()方法,取消訂閱http響應(yīng)頭事件。
7.當(dāng)該請求使用完畢時(shí),調(diào)用destroy()方法主動銷毀。
// 引入包名
import http from '@ohos.net.http';
// 每一個(gè)httpRequest對應(yīng)一個(gè)HTTP請求任務(wù),不可復(fù)用
let httpRequest = http.createHttp();
// 用于訂閱HTTP響應(yīng)頭,此接口會比request請求先返回。可以根據(jù)業(yè)務(wù)需要訂閱此消息
// 從API 8開始,使用on('headersReceive', Callback)替代on('headerReceive', AsyncCallback)。 8+
httpRequest.on('headersReceive', (header) => {
console.info('header: ' + JSON.stringify(header));
});
httpRequest.request(
// 填寫HTTP請求的URL地址,可以帶參數(shù)也可以不帶參數(shù)。URL地址需要開發(fā)者自定義。請求的參數(shù)可以在extraData中指定
"EXAMPLE_URL",
{
method: http.RequestMethod.POST, // 可選,默認(rèn)為http.RequestMethod.GET
// 開發(fā)者根據(jù)自身業(yè)務(wù)需要添加header字段
header: {
'Content-Type': 'application/json'
},
// 當(dāng)使用POST請求時(shí)此字段用于傳遞內(nèi)容
extraData: {
"data": "data to send",
},
expectDataType: http.HttpDataType.STRING, // 可選,指定返回?cái)?shù)據(jù)的類型
usingCache: true, // 可選,默認(rèn)為true
priority: 1, // 可選,默認(rèn)為1
connectTimeout: 60000, // 可選,默認(rèn)為60000ms
readTimeout: 60000, // 可選,默認(rèn)為60000ms
usingProtocol: http.HttpProtocol.HTTP1_1, // 可選,協(xié)議類型默認(rèn)值由系統(tǒng)自動指定
}, (err, data) => {
if (!err) {
// data.result為HTTP響應(yīng)內(nèi)容,可根據(jù)業(yè)務(wù)需要進(jìn)行解析
console.info('Result:' + JSON.stringify(data.result));
console.info('code:' + JSON.stringify(data.responseCode));
// data.header為HTTP響應(yīng)頭,可根據(jù)業(yè)務(wù)需要進(jìn)行解析
console.info('header:' + JSON.stringify(data.header));
console.info('cookies:' + JSON.stringify(data.cookies)); // 8+
} else {
console.info('error:' + JSON.stringify(err));
// 取消訂閱HTTP響應(yīng)頭事件
httpRequest.off('headersReceive');
// 當(dāng)該請求使用完畢時(shí),調(diào)用destroy方法主動銷毀
httpRequest.destroy();
}
}
);
鴻蒙開發(fā)崗位需要掌握那些核心要領(lǐng)?
目前還有很多小伙伴不知道要學(xué)習(xí)哪些鴻蒙技術(shù)?不知道重點(diǎn)掌握哪些?為了避免學(xué)習(xí)時(shí)頻繁踩坑,最終浪費(fèi)大量時(shí)間的。
自己學(xué)習(xí)時(shí)必須要有一份實(shí)用的鴻蒙(Harmony NEXT)資料非常有必要。 這里我推薦,根據(jù)鴻蒙開發(fā)官網(wǎng)梳理與華為內(nèi)部人員的分享總結(jié)出的開發(fā)文檔。內(nèi)容包含了:【ArkTS、ArkUI、Stage模型、多端部署、分布式應(yīng)用開發(fā)、音頻、視頻、WebGL、OpenHarmony多媒體技術(shù)、Napi組件、OpenHarmony內(nèi)核、Harmony南向開發(fā)、鴻蒙項(xiàng)目實(shí)戰(zhàn)】等技術(shù)知識點(diǎn)。
廢話就不多說了,接下來好好看下這份資料。
如果你是一名Android、Java、前端等等開發(fā)人員,想要轉(zhuǎn)入鴻蒙方向發(fā)展??梢灾苯宇I(lǐng)取這份資料輔助你的學(xué)習(xí)。鴻蒙OpenHarmony知識←前往。下面是鴻蒙開發(fā)的學(xué)習(xí)路線圖。
針對鴻蒙成長路線打造的鴻蒙學(xué)習(xí)文檔。鴻蒙(OpenHarmony )學(xué)習(xí)手冊(共計(jì)1236頁)與鴻蒙(OpenHarmony )開發(fā)入門教學(xué)視頻,幫助大家在技術(shù)的道路上更進(jìn)一步。
其中內(nèi)容包含:
《鴻蒙開發(fā)基礎(chǔ)》鴻蒙OpenHarmony知識←前往
- ArkTS語言
- 安裝DevEco Studio
- 運(yùn)用你的第一個(gè)ArkTS應(yīng)用
- ArkUI聲明式UI開發(fā)
- .……
《鴻蒙開發(fā)進(jìn)階》鴻蒙OpenHarmony知識←前往
- Stage模型入門
- 網(wǎng)絡(luò)管理
- 數(shù)據(jù)管理
- 電話服務(wù)
- 分布式應(yīng)用開發(fā)
- 通知與窗口管理
- 多媒體技術(shù)
- 安全技能
- 任務(wù)管理
- WebGL
- 國際化開發(fā)
- 應(yīng)用測試
- DFX面向未來設(shè)計(jì)
- 鴻蒙系統(tǒng)移植和裁剪定制
- ……
《鴻蒙開發(fā)實(shí)戰(zhàn)》鴻蒙OpenHarmony知識←前往文章來源:http://www.zghlxwxcb.cn/news/detail-861732.html
- ArkTS實(shí)踐
- UIAbility應(yīng)用
- 網(wǎng)絡(luò)案例
- ……
最后
鴻蒙是完全具備無與倫比的機(jī)遇和潛力的;預(yù)計(jì)到年底將有 5,000 款的應(yīng)用完成原生鴻蒙開發(fā),這么多的應(yīng)用需要開發(fā),也就意味著需要有更多的鴻蒙人才。鴻蒙開發(fā)工程師也將會迎來爆發(fā)式的增長,學(xué)習(xí)鴻蒙勢在必行!文章來源地址http://www.zghlxwxcb.cn/news/detail-861732.html
到了這里,關(guān)于鴻蒙OS開發(fā)實(shí)戰(zhàn):【網(wǎng)絡(luò)管理HTTP數(shù)據(jù)請求】的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!