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

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求

這篇具有很好參考價(jià)值的文章主要介紹了【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、介紹

資料來(lái)自官網(wǎng):文檔中心

網(wǎng)絡(luò)管理模塊主要提供以下功能:

  • HTTP數(shù)據(jù)請(qǐng)求:通過(guò)HTTP發(fā)起一個(gè)數(shù)據(jù)請(qǐng)求。
  • WebSocket連接:使用WebSocket建立服務(wù)器與客戶端的雙向連接。
  • Socket連接:通過(guò)Socket進(jìn)行數(shù)據(jù)傳輸。

日常開(kāi)發(fā)中HTTP請(qǐng)求使用會(huì)比較多,主要對(duì)HTTP請(qǐng)求進(jìn)行總結(jié)記錄

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

二、HTTP請(qǐng)求

場(chǎng)景:應(yīng)用通過(guò)HTTP發(fā)起一個(gè)數(shù)據(jù)請(qǐng)求,支持常見(jiàn)的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

request接口開(kāi)發(fā)步驟?:

  1. 從@ohos.net.http.d.ts中導(dǎo)入http命名空間。
  2. 調(diào)用createHttp()方法,創(chuàng)建一個(gè)HttpRequest對(duì)象。
  3. 調(diào)用該對(duì)象的on()方法,訂閱http響應(yīng)頭事件,此接口會(huì)比request請(qǐng)求先返回??梢愿鶕?jù)業(yè)務(wù)需要訂閱此消息。
  4. 調(diào)用該對(duì)象的request()方法,傳入http請(qǐng)求的url地址和可選參數(shù),發(fā)起網(wǎng)絡(luò)請(qǐng)求。
  5. 按照實(shí)際業(yè)務(wù)需要,解析返回結(jié)果。
  6. 調(diào)用該對(duì)象的off()方法,取消訂閱http響應(yīng)頭事件。
  7. 當(dāng)該請(qǐng)求使用完畢時(shí),調(diào)用destroy()方法主動(dòng)銷(xiāo)毀。

2.1、開(kāi)發(fā)網(wǎng)絡(luò)權(quán)限。

在model.json5文件中的module模塊下添加如下請(qǐng)求權(quán)限:

    "requestPermissions": [
      {
        "name": "ohos.permission.INTERNET"
      }
    ],

2.2、使用HTTP請(qǐng)求

2.2.1、定義HTTP請(qǐng)求方法

在ets文件夾下新建model文件夾,在model內(nèi)新建LoginModel文件,用來(lái)處理登錄HTTP請(qǐng)求

model文件夾主要用來(lái)處理數(shù)據(jù)查詢

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

具體代碼??


import http from '@ohos.net.http'
class LoginModel{
  baseUrl:string = 'http://127.0.0.1:8000'

  reqLogin(){
    return new Promise((resolve,reject) => {
      //1.創(chuàng)建http請(qǐng)求
      let httpRequest = http.createHttp()
      //2.發(fā)送請(qǐng)求
      httpRequest.request(
        `${this.baseUrl}/saas-api/user/login`,
        {
          method:http.RequestMethod.POST,
          extraData:{'username':'admin','password':'admin'},
          header:{
            'X-Tenant-ID':'1',
            'Content-Type': 'application/json'
          },
          connectTimeout:10000,
          readTimeout:10000
        },
      ).then(resp => {
        if(resp.responseCode === 200){
          //查詢成功
          console.log('http--成功',resp.result)
          resolve(JSON.parse(resp.result.toString()))

        }else{
          console.log('http--失敗',resp.result)
          reject('查詢失敗')
        }
      })
        .catch(error => {
          console.info('error:'+JSON.stringify(error))
          reject('查詢失敗')
        })
    })
  }
}

const loginModel = new LoginModel()
export default loginModel as LoginModel

2.2.2、在頁(yè)面中使用HTTP封裝的請(qǐng)求方法

import LoginModel from '../model/LoginModel'
@Entry
@Component
struct HttpPage {
  @State message: string = 'Hello'

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button('http請(qǐng)求')
          .onClick(() => {
            LoginModel.reqLogin()
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

在頁(yè)面中點(diǎn)擊 'http請(qǐng)求' 按鈕時(shí),日志會(huì)打印成功的結(jié)果

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

三、第三方庫(kù)axios?

3.1、下載和安裝ohpm

具體可查看官網(wǎng)指引:文檔中心

3.1.1、下載ohpm工具包,點(diǎn)擊鏈接獲取。

3.1.2、解壓工具包,執(zhí)行初始化命令

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

3.1.3、將ohpm配置到環(huán)境變量中。

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

配置好后,打開(kāi)命令窗口輸入 ohpm -v,便能看到版本號(hào)

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

3.2、下載和安裝axios

3.2.1、下載axios

進(jìn)入項(xiàng)目目錄,輸入下面命令

ohpm install @ohos/axios

安裝成功后,在項(xiàng)目的oh-package.json5文件內(nèi)可以查看到安裝的庫(kù),在oh_modules下也能看到安裝的安裝包

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

3.2.2、開(kāi)發(fā)網(wǎng)絡(luò)權(quán)限

在model.json5文件中的module模塊下添加如下請(qǐng)求權(quán)限:

    "requestPermissions": [
      {
        "name": "ohos.permission.INTERNET"
      }
    ],

備注:HTTP請(qǐng)求時(shí)已經(jīng)設(shè)置了請(qǐng)求權(quán)限,此處就不重復(fù)設(shè)置了

推薦:鴻蒙提供的第三方庫(kù)地址OpenHarmony三方庫(kù)中心倉(cāng)

3.3、使用axios

3.3.1、定義axios請(qǐng)求方法

在model內(nèi)新建LoginModel文件LoginModelAxios文件,用來(lái)處理登錄axios請(qǐng)求

import axios from '@ohos/axios'
class LoginModelAxios{
  baseUrl:string = 'http://127.0.0.1:8000'

 async reqLogin(){
   let resp =await axios.post(
     `${this.baseUrl}/saas-api/user/login`,
     {username:'admin',password:'admin'},
     {
       headers:{
         'X-Tenant-ID':'1'
       }
     }
    )
   if(resp.status === 200){
     console.log('axios--成功',JSON.stringify(resp.data))
     return resp.data
   }
   //查詢失敗
   console.log('axios--失敗',JSON.stringify(resp))
  }
}

const loginModelAxios = new LoginModelAxios()
export default loginModelAxios as LoginModelAxios

3.3.2、在頁(yè)面中使用axios封裝的請(qǐng)求方法?

import LoginModel from '../model/LoginModel'
import loginModelAxios from '../model/LoginModelAxios'
@Entry
@Component
struct HttpPage {
  @State message: string = 'Hello'

  build() {
    Row() {
      Column({space:8}) {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button('http請(qǐng)求')
          .onClick(() => {
            LoginModel.reqLogin()
          })
        Button('axios請(qǐng)求')
          .onClick(() => {
            loginModelAxios.reqLogin()
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

在頁(yè)面中點(diǎn)擊 'axios請(qǐng)求' 按鈕時(shí),日志會(huì)打印成功的結(jié)果?

【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求,學(xué)習(xí),筆記

最后:???????????????文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-835390.html

到了這里,關(guān)于【鴻蒙系統(tǒng)學(xué)習(xí)筆記】網(wǎng)絡(luò)請(qǐng)求的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • HarmonyOS鴻蒙ArkTS,封裝http網(wǎng)絡(luò)請(qǐng)求

    HarmonyOS鴻蒙ArkTS,封裝http網(wǎng)絡(luò)請(qǐng)求

    要想使用http請(qǐng)求,系統(tǒng)必須要具備ohos.permission.INTERNET權(quán)限,在model.json5文件中的module模塊下添加如下請(qǐng)求權(quán)限: 在module.json5文件中 配置 在文件中定義,文件目錄自定義 至此整個(gè)請(qǐng)求封裝結(jié)束

    2024年02月20日
    瀏覽(20)
  • 鴻蒙ArkTS實(shí)現(xiàn)http,axios網(wǎng)絡(luò)請(qǐng)求

    鴻蒙ArkTS實(shí)現(xiàn)http,axios網(wǎng)絡(luò)請(qǐng)求

    實(shí)現(xiàn)http請(qǐng)求,在ArkTS中我們可以直接使用http如下代碼 實(shí)現(xiàn)axios我們需要使用一個(gè)第三方工具 下載ohpm工具包,點(diǎn)擊鏈接獲取。 2. 解壓文件,進(jìn)入“ohpm/bin”目錄,打開(kāi)命令行工具,執(zhí)行如下指令初始化ohpm Windows環(huán)境下執(zhí)行: init.bat? 如果init.bat不可以使用./init.bat 3. 將ohpm配置

    2024年04月12日
    瀏覽(19)
  • 鴻蒙HarmonyOS-HTTP網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求

    鴻蒙HarmonyOS-HTTP網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求

    應(yīng)用可以通過(guò)HTTP發(fā)起一個(gè)數(shù)據(jù)請(qǐng)求,支持常見(jiàn)的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。 親愛(ài)的讀者: 首先,我要感謝您抽出寶貴的時(shí)間閱讀這篇文章。我深知,您的每一分每一秒都是寶貴的。為此,我在創(chuàng)作這篇文章時(shí)付出了巨大的努力,力求為您提供最具價(jià)

    2024年01月16日
    瀏覽(19)
  • 鴻蒙OS開(kāi)發(fā)實(shí)戰(zhàn):【網(wǎng)絡(luò)管理HTTP數(shù)據(jù)請(qǐng)求】

    鴻蒙OS開(kāi)發(fā)實(shí)戰(zhàn):【網(wǎng)絡(luò)管理HTTP數(shù)據(jù)請(qǐng)求】

    應(yīng)用通過(guò)HTTP發(fā)起一個(gè)數(shù)據(jù)請(qǐng)求,支持常見(jiàn)的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。 HTTP數(shù)據(jù)請(qǐng)求功能主要由http模塊提供。 使用該功能需要申請(qǐng)ohos.permission.INTERNET權(quán)限。 涉及的接口如下表,具體的接口說(shuō)明請(qǐng)參考API文檔。 接口名 功能描述 createHttp() 創(chuàng)建一個(gè)ht

    2024年04月29日
    瀏覽(20)
  • 鴻蒙App開(kāi)發(fā)-網(wǎng)絡(luò)請(qǐng)求-下拉刷新三方庫(kù)-底部Tab欄-滾動(dòng)組件(含源碼)

    鴻蒙App開(kāi)發(fā)-網(wǎng)絡(luò)請(qǐng)求-下拉刷新三方庫(kù)-底部Tab欄-滾動(dòng)組件(含源碼)

    本文介紹一個(gè)基于鴻蒙ArkTS開(kāi)發(fā)的App,是一個(gè)包含輪播圖、文章列表和 Web 頁(yè)面等功能的多頁(yè)面應(yīng)用。 本文主要內(nèi)容包括: 一、效果圖 首頁(yè) 詳情頁(yè) ?? 二、內(nèi)容簡(jiǎn)介 1.底部Tab欄和兩個(gè)頁(yè)面 ????????App底部是一個(gè)TabBar,點(diǎn)擊TabBar可以切換上面的頁(yè)面。共包含兩個(gè)頁(yè)面,一個(gè)

    2024年02月01日
    瀏覽(25)
  • 【7 微信小程序?qū)W習(xí) - 小程序的系統(tǒng)API調(diào)用,網(wǎng)絡(luò)請(qǐng)求封裝】

    【7 微信小程序?qū)W習(xí) - 小程序的系統(tǒng)API調(diào)用,網(wǎng)絡(luò)請(qǐng)求封裝】

    請(qǐng)求數(shù)據(jù),保存數(shù)據(jù) 需要封裝為單獨(dú)的函數(shù),不然不是異步的 (推薦,可配置不同基礎(chǔ)URL的多個(gè)實(shí)例)

    2024年02月09日
    瀏覽(23)
  • TypeScript學(xué)習(xí)筆記、鴻蒙開(kāi)發(fā)學(xué)習(xí)筆記

    TypeScript學(xué)習(xí)筆記、鴻蒙開(kāi)發(fā)學(xué)習(xí)筆記

    struct Index?? 自定義組件:可復(fù)用的UI單元 @Component??? 自定義組件 @Entry????????????? 當(dāng)前組件是入口組件 @State????????????? 標(biāo)記變量為狀態(tài)變量,值變化會(huì)觸發(fā)UI刷新 ?

    2024年02月02日
    瀏覽(93)
  • 鴻蒙開(kāi)發(fā)學(xué)習(xí)筆記1

    目的: 了解Harmony OS產(chǎn)生的背景 理解Harmony OS系統(tǒng)定位,特性,架構(gòu)。 理解Harmony OS和Android的區(qū)別和聯(lián)系 理解鴻蒙生態(tài),OpenHarmony,Harmony OS的區(qū)別和聯(lián)系。 什么是Harmony OS: 全場(chǎng)景 分布式 智慧操作系統(tǒng) 全場(chǎng)景:面向萬(wàn)物互聯(lián)。 分布式:多份任務(wù)分解給不同的。 操作系統(tǒng):管

    2024年02月15日
    瀏覽(19)
  • 網(wǎng)絡(luò)安全系統(tǒng)教程+學(xué)習(xí)路線(自學(xué)筆記)

    網(wǎng)絡(luò)安全系統(tǒng)教程+學(xué)習(xí)路線(自學(xué)筆記)

    網(wǎng)絡(luò)安全可以基于攻擊和防御視角來(lái)分類,我們經(jīng)常聽(tīng)到的 “紅隊(duì)”、“滲透測(cè)試” 等就是研究攻擊技術(shù),而“藍(lán)隊(duì)”、“安全運(yùn)營(yíng)”、“安全運(yùn)維”則研究防御技術(shù)。 無(wú)論網(wǎng)絡(luò)、Web、移動(dòng)、桌面、云等哪個(gè)領(lǐng)域,都有攻與防兩面性,例如 Web 安全技術(shù),既有 Web 滲透,也有

    2024年02月09日
    瀏覽(23)
  • 【網(wǎng)絡(luò)協(xié)議詳解】——FTP系統(tǒng)協(xié)議(學(xué)習(xí)筆記)

    【網(wǎng)絡(luò)協(xié)議詳解】——FTP系統(tǒng)協(xié)議(學(xué)習(xí)筆記)

    將某臺(tái)計(jì)算機(jī)中的文件通過(guò)網(wǎng)絡(luò)傳送到可能相距很遠(yuǎn)的另一臺(tái)計(jì)算機(jī)中,是一項(xiàng)基本的網(wǎng)絡(luò)應(yīng)用,即 文件傳送 。 文件傳送協(xié)議FTP (File Transfer Protocol)是因特網(wǎng)上使用得最廣泛的文件傳送協(xié)議。 FTP 提供交互式的訪問(wèn) ,允許客戶 指明文件的類型與格式 (如指明是否使用AS

    2024年02月07日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包