国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

鴻蒙 HarmonyOS4.0 Http數(shù)據(jù)請求封裝詳解

這篇具有很好參考價(jià)值的文章主要介紹了鴻蒙 HarmonyOS4.0 Http數(shù)據(jù)請求封裝詳解。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

http請求封裝

步驟

1、定義響應(yīng)數(shù)據(jù)格式

2、封裝數(shù)據(jù)請求

3、將各種請求進(jìn)行模塊劃分

4、請求示例

項(xiàng)目目錄

鴻蒙 接口請求封裝,harmonyos

1、定義響應(yīng)數(shù)據(jù)格式

?export default class ?Response {
? ?/**
? ? * 響應(yīng)碼
? ? */
? ?code:number
? ?/**
? ? * 響應(yīng)消息
? ? */
? ?message:string
? ?/**
? ? * 響應(yīng)數(shù)據(jù)
? ? */
? ?data:any
?}

2、封裝數(shù)據(jù)請求

提示:具體更詳細(xì)的配置請參考官網(wǎng)

?import http from '@ohos.net.http';
?//導(dǎo)入預(yù)定好的數(shù)據(jù)響應(yīng)格式
?import Response from '../utils/Response'
??
?//導(dǎo)出去一個(gè)請求函數(shù),這樣開發(fā)者就可以像axios一樣的風(fēng)格請求數(shù)據(jù)
?export function request(url:string,method: http.RequestMethod,data?:any): Promise<Response> {
? ?//定義一個(gè)后臺請求的基地址
? ?const BASE_URL = ?"http://localhost:9600"
? ?let httpRequest = http.createHttp();
? ?let responseResult = httpRequest.request( BASE_URL+ url,{
? ? ?method: method,
? ? ?// header: {
? ? ?// ? 'Content-Type': 'application/json'
? ? ?// },
? ? ?//攜帶額外參數(shù)
? ? ?extraData: JSON.stringify(data),
? ? ?// 可選,指定返回?cái)?shù)據(jù)的類型
? ? ?// expectDataType: http.HttpDataType.STRING,
? ? ?// 可選,默認(rèn)為true
? ? ?// usingCache: true,
? ? ?// 可選,默認(rèn)為1
? ? ?// priority: 1,
? ? ?// 可選,默認(rèn)為60000ms
? ? ?// connectTimeout: 60000,
? ? ?// readTimeout: 60000,
? ? ?// 可選,協(xié)議類型默認(rèn)值由系統(tǒng)自動(dòng)指定
? ? ?// usingProtocol: http.HttpProtocol.HTTP1_1,
?  });
??
? ?let response = new Response();
? ?// 處理數(shù)據(jù),并返回
? ?return responseResult.then((value: http.HttpResponse) => {
? ? ?if (value.responseCode === 200) {
? ? ? ?// 獲取返回?cái)?shù)據(jù),將返回的json數(shù)據(jù)解析成事先預(yù)定好的響應(yīng)格式
? ? ? ?// 這里建議和后端的保持一致
? ? ? ?let res: Response = JSON.parse(`${value.result}`);
? ? ? ?response.data = res.data;
? ? ? ?response.code = res.code;
? ? ? ?response.message = res.message;
? ?  } else {
? ? ? ?response.message = '請求錯(cuò)誤';
? ? ? ?response.code = 400;
? ?  }
? ? ?return response;
?  }).catch(() => {
? ? ?response.message = '請求錯(cuò)誤';
? ? ?response.code = 400;
? ? ?return response;
?  });
?}

3、將各種請求進(jìn)行模塊劃分

熟悉vue開發(fā)的同學(xué)都知道我們不同模塊的請求一般放在api目錄下進(jìn)行劃分

如下以請求用戶User模塊為示例

?import http from '@ohos.net.http';
?//導(dǎo)入封裝好的請求
?import { request } from '../utils/request'
??
?/**
? * 根據(jù)用戶id請求用戶數(shù)據(jù)
? * @param userId
? * @returns
? */
?export function getUserById(userId) {
? ?return request(`/user/get/${userId}`,http.RequestMethod.GET)
?}
??
?/**
? * 請求用戶數(shù)據(jù)
? * @param userId
? * @returns
? */
?export function getUser() {
? ?return request('/user/get',http.RequestMethod.GET)
?}
??
?/**
? * 用戶數(shù)據(jù)保存
? * @param userId
? * @returns
? */
?export function save(data) {
? ?return request(`/user/save`,http.RequestMethod.POST,data)
?}

4、附上一個(gè)請求示例

這里提前一個(gè)用戶對象用于接收數(shù)據(jù)時(shí)使用文章來源地址http://www.zghlxwxcb.cn/news/detail-763170.html

?export default class User {
? ?username:string
? ?password:string
?}
?//導(dǎo)入api下的User模塊:請求方法
?import {getUser,save,getUserById} from '../api/user'
?//導(dǎo)入定義好的用戶對象
?import User from '../model/User'
??
?@Entry
?@Component
?struct Index {
? ?@State user:User = {
? ? ?username: '',
? ? ?password: ''
?  }
??
? ? ?//組件展示前進(jìn)行數(shù)據(jù)的一個(gè)請求
? ?aboutToAppear() {
? ? ?//根據(jù)用戶id進(jìn)行的一個(gè)請求
? ? ?getUserById(1).then(res => {
? ? ? ?if(res.code === 200){
? ? ? ? ?this.user = res.data
? ? ?  }
? ?  })
? ? ?//不攜帶參數(shù)的一個(gè)請求
? ? ?getUser().then(res => {
? ? ? ?if(res.code === 200){
? ? ? ? ?this.user = res.data
? ? ?  }
? ?  })
?  }
??
? ?build() {
? ? ?Row() {
? ? ? ?Column() {
? ? ? ? ?Text(this.user.username)
? ? ? ? ?  .fontSize(30)
? ? ? ? ?  .fontWeight(FontWeight.Bold)
? ? ? ? ?Text(this.user.password)
? ? ? ? ?  .fontSize(30)
? ? ? ? ?  .fontWeight(FontWeight.Bold)
??
? ? ? ? ?Divider()
? ? ? ? ?TextInput().margin({ top: 20 })
? ? ? ? ?  .onChange((value: string) => {
? ? ? ? ? ? ?this.user.username = value
? ? ? ? ?  })
? ? ? ? ?TextInput().type(InputType.Password).margin({ top: 20 })
? ? ? ? ?  .onChange((value: string) => {
? ? ? ? ? ? ?this.user.password = value
? ? ? ? ?  })
? ? ? ? ?Button('登錄').width(150).margin({ top: 20 })
? ? ? ? ?  .onClick(()=> {
? ? ? ? ? ? ?console.log("發(fā)送成功")
? ? ? ? ? ? ?//保存用戶數(shù)據(jù)的一個(gè)請求
? ? ? ? ? ? ?save(this.user)
? ? ? ? ?  })
? ? ?  }
? ? ?  .width('100%')
? ? ?  .height('100%')
? ? ?  .padding({top: 50})
? ?  }
? ?  .height('100%')
? ?  .width('100%')
? ?  .alignItems(VerticalAlign.Top)
?  }
?}

到了這里,關(guān)于鴻蒙 HarmonyOS4.0 Http數(shù)據(jù)請求封裝詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 詳細(xì)教程 - 從零開發(fā) Vue 鴻蒙harmonyOS應(yīng)用 第五節(jié) (基于uni-app封裝鴻蒙接口請求庫)

    詳細(xì)教程 - 從零開發(fā) Vue 鴻蒙harmonyOS應(yīng)用 第五節(jié) (基于uni-app封裝鴻蒙接口請求庫)

    ??隨著鴻蒙系統(tǒng)的興起,越來越多的app會采用鴻蒙開發(fā)。而鴻蒙開發(fā)必不可少的就是調(diào)用各種接口服務(wù)。為了簡化接口的調(diào)用流程,我們通常會做一層封裝。今天就來講解一下,如何用uni-app封裝鴻蒙的接口請求庫。 ??首先我們要新建一個(gè)鴻蒙項(xiàng)目啦!當(dāng)然選擇第一個(gè)空白項(xiàng)

    2024年02月02日
    瀏覽(26)
  • 鴻蒙HarmonyOS4.0開發(fā)應(yīng)用學(xué)習(xí)筆記

    鴻蒙HarmonyOS4.0開發(fā)應(yīng)用學(xué)習(xí)筆記

    鴻蒙harmony開發(fā)文檔指南 DevEco Studio下載地址 選擇或者安裝環(huán)境 選擇和下載SDK 安裝總覽 編輯器界面 2.1變量聲明 2.2條件控制 2.3循環(huán)迭代 2.4函數(shù) 2.5類和接口 2.6模塊開發(fā) 通用功能抽取到單獨(dú)的ts文件,每個(gè)文件都是一個(gè)模塊(module)。 模塊可以相互加載,提高代碼復(fù)用性。 crea

    2024年02月04日
    瀏覽(28)
  • HarmonyOS中的http請求及其封裝(附案例)

    HarmonyOS提供了@ohos.net.http模塊,它提供了Http數(shù)據(jù)請求能力。當(dāng)在應(yīng)用開發(fā)中需要使用http獲取服務(wù)端數(shù)據(jù)時(shí)可以導(dǎo)入該模塊實(shí)現(xiàn)http請求的發(fā)送。 @ohos.net.http模塊提供http數(shù)據(jù)請求能力。應(yīng)用可以通過http發(fā)起一個(gè)數(shù)據(jù)請求,支持常見的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CON

    2024年02月04日
    瀏覽(12)
  • 【華為鴻蒙系統(tǒng)學(xué)習(xí)】- HarmonyOS4.0開發(fā)|自學(xué)篇

    【華為鴻蒙系統(tǒng)學(xué)習(xí)】- HarmonyOS4.0開發(fā)|自學(xué)篇

    ? ??個(gè)人主頁:?Aileen_0v0 ??熱門專欄:?華為鴻蒙系統(tǒng)學(xué)習(xí)|計(jì)算機(jī)網(wǎng)絡(luò)|數(shù)據(jù)結(jié)構(gòu)與算法 ??個(gè)人格言: \\\"沒有羅馬,那就自己創(chuàng)造羅馬~\\\" 目錄 HarmonyOS 4.0 技術(shù)介紹: HarmonyOS三大特征: ? ? 1.實(shí)現(xiàn)硬件互助,資源共享。 ?????2.?面向開發(fā)者,實(shí)現(xiàn)一次開發(fā),多端部署。 ?3.一套操

    2024年02月05日
    瀏覽(29)
  • 最新鴻蒙HarmonyOS4.0開發(fā)登陸的界面1

    最新鴻蒙HarmonyOS4.0開發(fā)登陸的界面1

    說明一下,本人只是學(xué)習(xí)中,現(xiàn)在只是拿著vue及uniapp的經(jīng)驗(yàn)在一點(diǎn)一點(diǎn)的折騰,不過現(xiàn)在看來,鴻蒙入門并不是很難。也許是自己沒有深入下去。 https://developer.harmonyos.com/cn/develop/deveco-studio#download 安裝成后,則可以開發(fā)了。 Bundle name 要求唯一。 等待完成,完成后點(diǎn)擊previe

    2024年02月04日
    瀏覽(32)
  • 鴻蒙HarmonyOS4.0開發(fā)應(yīng)用從入門到實(shí)戰(zhàn) 安裝DevEcoStudio

    鴻蒙HarmonyOS4.0開發(fā)應(yīng)用從入門到實(shí)戰(zhàn) 安裝DevEcoStudio

    安裝包下載地址: 可以根據(jù)自己的操作系統(tǒng)選擇對應(yīng)版本下載。 HUAWEI DevEco Studio和SDK下載和升級 | HarmonyOS開發(fā)者 下載好后,打開安裝包,進(jìn)入安裝界面: 點(diǎn)擊Next,進(jìn)入安裝目錄選擇頁面(不要出現(xiàn)中文或特殊字符),可以走默認(rèn)路徑: 點(diǎn)擊Next,進(jìn)入安裝選項(xiàng)頁面,按照如

    2024年02月04日
    瀏覽(100)
  • 全面升級:華為鴻蒙HarmonyOS4正式發(fā)布,玩趣個(gè)性化,小藝AI升級

    全面升級:華為鴻蒙HarmonyOS4正式發(fā)布,玩趣個(gè)性化,小藝AI升級

    8月4日新聞,今天下午,華為正式發(fā)布了最新版本的鴻蒙操作系統(tǒng)——HarmonyOS 4! 在華為發(fā)布會上,鴻蒙HarmonyOS迎來了一系列令人激動(dòng)的功能升級。其中包括個(gè)性化空間、多種生產(chǎn)力工具以及增強(qiáng)的手機(jī)AI助手\\\"小藝\\\"。這次更新使得鴻蒙手機(jī)系統(tǒng)呈現(xiàn)出全新的特色。讓我們一起

    2024年02月13日
    瀏覽(20)
  • 華為harmonyos4.0鴻蒙4.0安裝谷歌服務(wù)框架Play商店,解決從服務(wù)器檢索信息時(shí)出錯(cuò)

    華為harmonyos4.0鴻蒙4.0安裝谷歌服務(wù)框架Play商店,解決從服務(wù)器檢索信息時(shí)出錯(cuò)

    8月4號華為手機(jī)發(fā)布了全新的harmonyos4.0鴻蒙4.0系統(tǒng),很多人需要問還是不是支持谷歌服務(wù)框架?那么答案是肯定的,它和鴻蒙3是一樣的,一樣的操作,一樣的支持安裝谷歌服務(wù)框架,安裝Google play商店。測試機(jī)型,Mate30,Mate40,Mate50,P50,P60,華為的幾款折疊屏xs,x3,這幾款測試都是

    2024年02月13日
    瀏覽(22)
  • HarmonyOS ArkTS HTTP數(shù)據(jù)請求(九)

    HarmonyOS ArkTS HTTP數(shù)據(jù)請求(九)

    日常生活中我們使用應(yīng)用程序看新聞、發(fā)送消息等,都需要連接到互聯(lián)網(wǎng),從服務(wù)端獲取數(shù)據(jù)。例如,新聞應(yīng)用可以從新聞服務(wù)器中獲取最新的熱點(diǎn)新聞,從而給用戶打造更加豐富、更加實(shí)用的體驗(yàn)。 那么要實(shí)現(xiàn)這樣一種能實(shí)時(shí)從服務(wù)端獲取數(shù)據(jù)的場景,就依賴于HTTP數(shù)據(jù)請

    2024年02月03日
    瀏覽(31)
  • 鴻蒙應(yīng)用開發(fā)之HTTP數(shù)據(jù)請求

    鴻蒙應(yīng)用開發(fā)之HTTP數(shù)據(jù)請求

    日常生活中我們使用應(yīng)用程序看新聞、發(fā)送消息等,都需要連接到互聯(lián)網(wǎng),從服務(wù)端獲取數(shù)據(jù)。例如,新聞應(yīng)用可以從新聞服務(wù)器中獲取最新的熱點(diǎn)新聞,從而給用戶打造更加豐富、更加實(shí)用的體驗(yàn)。 那么要實(shí)現(xiàn)這樣一種能實(shí)時(shí)從服務(wù)端獲取數(shù)據(jù)的場景,就依賴于HTTP數(shù)據(jù)請

    2024年02月05日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包