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

HarmonyOS使用HTTP訪問網(wǎng)絡(luò)

這篇具有很好參考價值的文章主要介紹了HarmonyOS使用HTTP訪問網(wǎng)絡(luò)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

HTTP數(shù)據(jù)請求

1 概述

日常生活中我們使用應(yīng)用程序看新聞、發(fā)送消息等,都需要連接到互聯(lián)網(wǎng),從服務(wù)端獲取數(shù)據(jù)。例如,新聞應(yīng)用可以從新聞服務(wù)器中獲取最新的熱點新聞,從而給用戶打造更加豐富、更加實用的體驗。

HarmonyOS使用HTTP訪問網(wǎng)絡(luò),harmonyos,http,鴻蒙系統(tǒng)

那么要實現(xiàn)這樣一種能實時從服務(wù)端獲取數(shù)據(jù)的場景,就依賴于HTTP數(shù)據(jù)請求。

2 什么是HTTP

HTTP即超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)是一個簡單的請求-響應(yīng)協(xié)議。它指定了客戶端可能發(fā)送給服務(wù)器什么樣的消息以及得到什么樣的響應(yīng)。

HarmonyOS使用HTTP訪問網(wǎng)絡(luò),harmonyos,http,鴻蒙系統(tǒng)

HTTP的工作原理正如上圖所示,客戶端向服務(wù)端發(fā)出一條HTTP數(shù)據(jù)請求,服務(wù)端接收請求后向客戶端返回一些數(shù)據(jù),然后客戶端再對這些數(shù)據(jù)進行解析和處理。

3 如何發(fā)起HTTP請求

HTTP數(shù)據(jù)請求功能主要由http模塊提供,包括發(fā)起請求、中斷請求、訂閱/取消訂閱HTTP Response Header 事件等。

在進行網(wǎng)絡(luò)請求前,您需要在module.json5文件中申明網(wǎng)絡(luò)訪問權(quán)限。

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

HarmonyOS使用HTTP訪問網(wǎng)絡(luò),harmonyos,http,鴻蒙系統(tǒng)

應(yīng)用訪問網(wǎng)絡(luò)需要申請ohos.permission.INTERNET權(quán)限,因為HarmonyOS提供了一種訪問控制機制即應(yīng)用權(quán)限,用來保證這些數(shù)據(jù)或功能不會被不當(dāng)或惡意使用。關(guān)于應(yīng)用權(quán)限的的詳細信息開發(fā)者可以參考:訪問控制。

您可以按照以下步驟完成HTTP數(shù)據(jù)請求:

  1. 導(dǎo)入http模塊。

    import http from '@ohos.net.http';
    
  2. 創(chuàng)建httpRequest對象。

    使用createHttp()創(chuàng)建一個httpRequest對象,里面包括常用的一些網(wǎng)絡(luò)請求方法,比如request、destroy、on(‘headerReceive’)等。

    let httpRequest = http.createHttp();
    

    需要注意的是每一個httpRequest對象對應(yīng)一個http請求任務(wù),不可復(fù)用。

  3. 訂閱請求頭(可選)。

    用于訂閱http響應(yīng)頭,此接口會比request請求先返回,可以根據(jù)業(yè)務(wù)需要訂閱此消息。

    httpRequest.on('headersReceive', (header) => {
        console.info('header: ' + JSON.stringify(header));
    });
    
  4. 發(fā)起http請求。

    http模塊支持常用的POST和GET等方法,封裝在RequestMethod中。調(diào)用request方法發(fā)起網(wǎng)絡(luò)請求,需要傳入兩個參數(shù)。第一個是請求的url地址,第二個是可選參數(shù),類型為HttpRequestOptions,用于定義可選參數(shù)的類型和取值范圍,包含請求方式、連接超時時間、請求頭字段等。

    使用Get請求,參數(shù)內(nèi)容需要拼接到URL中進行發(fā)送,如下示例中在url后面拼接了兩個自定義參數(shù),分別命名為param1和param2,值分別為value1和value2:

    let url= "https://EXAMPLE_URL?param1=v1&param2=v2";
    let promise = httpRequest.request(
      // 請求url地址
      url,
      {
        // 請求方式
        method: http.RequestMethod.GET,
        // 可選,默認為60s
        connectTimeout: 60000,
        // 可選,默認為60s
        readTimeout: 60000,
        // 開發(fā)者根據(jù)自身業(yè)務(wù)需要添加header字段
        header: {
          'Content-Type': 'application/json'
        }
      });
    

    POST請求參數(shù)需要添加到extraData里面,如下示例中在extraData里面定義添加了兩個自定義參數(shù)param1和param2,值分別為value1和value2:

    let url = "https://EXAMPLE_URL";
    let promise = httpRequest.request(
      // 請求url地址
      url,
      {
        // 請求方式
        method: http.RequestMethod.POST,
        // 請求的額外數(shù)據(jù)。
        extraData: {
          "param1": "value1",
          "param2": "value2",
        },
        // 可選,默認為60s
        connectTimeout: 60000,
        // 可選,默認為60s
        readTimeout: 60000,
        // 開發(fā)者根據(jù)自身業(yè)務(wù)需要添加header字段
        header: {
          'Content-Type': 'application/json'
        }
      });
    
  5. 處理響應(yīng)結(jié)果。

    data為網(wǎng)絡(luò)請求返回的結(jié)果,err為請求異常時返回的結(jié)果。data的類型為HttpResponse。

    promise.then((data) => { 
      if (data.responseCode === http.ResponseCode.OK) {
        console.info('Result:' + data.result);
        console.info('code:' + data.responseCode);
      }
    }).catch((err) => {
      console.info('error:' + JSON.stringify(err));
    });
    

    其中data.responseCode為http請求返回的狀態(tài)碼,如果狀態(tài)碼為http.ResponseCode.OK(即200),則表示請求成功,更多狀態(tài)碼可以在ResponseCode中查看。

    data.result為服務(wù)器返回的業(yè)務(wù)數(shù)據(jù),開發(fā)者可以根據(jù)自身業(yè)務(wù)場景解析此數(shù)據(jù)。

4 參考鏈接

  1. http數(shù)據(jù)請求參考:數(shù)據(jù)請求。

  2. 應(yīng)用權(quán)限參考:訪問控制。文章來源地址http://www.zghlxwxcb.cn/news/detail-768375.html

到了這里,關(guān)于HarmonyOS使用HTTP訪問網(wǎng)絡(luò)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 【HarmonyOS】【ArkTS】如何使用HTTP網(wǎng)絡(luò)請求獲取動態(tài)數(shù)據(jù)刷新UI界面

    【】 HttpRequest、ArkTS、網(wǎng)絡(luò)數(shù)據(jù)請求、@ohos.net.http 【前言】 在使用ArkTS開發(fā)HarmonyOS應(yīng)用時,需要調(diào)用HTTP網(wǎng)絡(luò)請求?@ohos.net.http?動態(tài)獲取數(shù)據(jù),進行UI列表刷新,這想必是應(yīng)用開發(fā)最常見的功能。但是根據(jù)官網(wǎng)網(wǎng)絡(luò)請求的示例代碼進行功能開發(fā)時,封裝方法進行HTTP請求后

    2024年02月08日
    瀏覽(23)
  • HarmonyOS 發(fā)送http網(wǎng)絡(luò)請求

    HarmonyOS 發(fā)送http網(wǎng)絡(luò)請求

    好 本文 我們來說 http請求 首先 我們要操作網(wǎng)絡(luò)內(nèi)容 需要申請權(quán)限 項目中找到 main目錄下的module.json5 最下面加上 這里 我在本地寫了一個get接口 大家可以想辦法 弄一個后端接口 首先 我們編寫一個組件雛形 我們導(dǎo)入 @ohos.net.http 然后 通過 createHttp 獲取一個http對象 然后通過對

    2024年01月23日
    瀏覽(25)
  • HarmonyOS開發(fā):基于http開源一個網(wǎng)絡(luò)請求庫

    HarmonyOS開發(fā):基于http開源一個網(wǎng)絡(luò)請求庫

    網(wǎng)絡(luò)封裝的目的,在于簡潔,使用起來更加的方便,也易于我們進行相關(guān)動作的設(shè)置,如果,我們不封裝,那么每次請求,就會重復(fù)大量的代碼邏輯,如下代碼,是官方給出的案例: 以上的案例,每次請求書寫這么多代碼,在實際的開發(fā)中,是無法承受的,所以基于此,封裝

    2024年02月06日
    瀏覽(26)
  • 【HarmonyOS開發(fā)】ArkTs使用Http封裝

    【HarmonyOS開發(fā)】ArkTs使用Http封裝

    @ohos/axios @ohos/retrofit @ohos/httpclient @ohos.net.http 本模塊提供HTTP數(shù)據(jù)請求能力。應(yīng)用可以通過HTTP發(fā)起一個數(shù)據(jù)請求,支持常見的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。 http.createHttp(創(chuàng)建請求實例任務(wù)); request(請求); destroy(中斷請求); on(訂閱HTTP Response H

    2024年01月22日
    瀏覽(16)
  • 非華為機型如何體驗HarmonyOS鴻蒙系統(tǒng) 刷寫HarmonyOS鴻蒙GSI系統(tǒng)以及一些初步的bug修復(fù)

    非華為機型如何體驗HarmonyOS鴻蒙系統(tǒng) 刷寫HarmonyOS鴻蒙GSI系統(tǒng)以及一些初步的bug修復(fù)

    最近很多視頻網(wǎng)站有非華為機型使用HarmonyOS鴻蒙系統(tǒng)的演示。其實大都是刷了HarmonyOS鴻蒙系統(tǒng)gsi系統(tǒng)。體驗還可以。有些刷入后bug較多。那么這些機型是如何刷寫gsi?可以參考我以往帖子 安卓玩機搞機-----沒有第三方包 刷寫第三方各種GSI系統(tǒng) 體驗非官方系統(tǒng)_gsi刷機包_安卓機

    2024年02月09日
    瀏覽(126)
  • 初識鴻蒙HarmonyOS系統(tǒng)

    鴻蒙HarmonyOS的誕生背景 鴻蒙HarmonyOS的起源: ? ? ? ? ? 鴻蒙HarmonyOS是中華為面對全球科技發(fā)展趨勢和自身戰(zhàn)略需求,在2019年推出的全新一代面向全場景的分布式操作系統(tǒng)。它的誕生旨在應(yīng)對物聯(lián)網(wǎng)時代下各種智能設(shè)備互聯(lián)互通的需求,以及構(gòu)建自主可控的生態(tài)系統(tǒng),特別是

    2024年04月13日
    瀏覽(21)
  • HarmonyOS-鴻蒙系統(tǒng)概述

    HarmonyOS-鴻蒙系統(tǒng)概述

    你了解鴻蒙系統(tǒng)嗎? 你看好鴻蒙系統(tǒng)嗎? 今年秋季即將推出的HarmonyOS Next 星河版熱度空前,一起來了解一下吧。本文將從HarmonyOS 的應(yīng)用場景、發(fā)展歷程、架構(gòu)、開發(fā)語言、開發(fā)工具、生態(tài)建設(shè)六個角度聊一聊個人的理解。 1、應(yīng)用場景 鴻蒙,原本意思是中國神話傳說的遠古

    2024年04月10日
    瀏覽(50)
  • 【HarmonyOS】鴻蒙操作系統(tǒng)架構(gòu)

    【HarmonyOS】鴻蒙操作系統(tǒng)架構(gòu)

    其它相關(guān)推薦: 軟考系統(tǒng)架構(gòu)之案例篇(架構(gòu)設(shè)計相關(guān)概念) 系統(tǒng)架構(gòu)之微服務(wù)架構(gòu) 系統(tǒng)架構(gòu)設(shè)計之微內(nèi)核架構(gòu) 所屬專欄:系統(tǒng)架構(gòu)設(shè)計師 HarmonyOS是一款面向萬物互聯(lián)時代的、全新的分布式操作系統(tǒng)。 在傳統(tǒng)的單設(shè)備系統(tǒng)能力基礎(chǔ)上,HarmonyOS提出了基于同一套系統(tǒng)能力、適

    2024年02月08日
    瀏覽(23)
  • 【HarmonyOS】小熊派鴻蒙系統(tǒng)搭建

    【HarmonyOS】小熊派鴻蒙系統(tǒng)搭建

    BearPi-HM Micro開發(fā)板是一塊高度集成并可運行Openharmony系統(tǒng)的開發(fā)板,板載高性能的工業(yè)級處理器STM32MP157芯片,搭配4.3寸LCD電容式觸摸屏,并板載wifi電路及標準的E53接口,標準的E53接口可擴展智能加濕器、智能臺燈、智能安防、智能煙感等案例??烧郫B式屏幕設(shè)計大大提高用戶

    2024年02月09日
    瀏覽(18)
  • HarmonyOS鴻蒙操作系統(tǒng)架構(gòu)

    HarmonyOS鴻蒙操作系統(tǒng)架構(gòu)

    目錄 1. 分布式架構(gòu): 2. 統(tǒng)一的開發(fā)平臺: 3. 多內(nèi)核共享: 4. 自適應(yīng)界面: 5. AR、VR、MR支持: 6. 安全和隱私保護: 7. AI集成: 8. 應(yīng)用生態(tài)系統(tǒng): 9. 開源和開放: 10. 快速部署和更新: 11. 分布式數(shù)據(jù)管理: 12. 分布式安全體系: 13. 分布式標識和認證: 14. 統(tǒng)一的開發(fā)語言和

    2024年02月04日
    瀏覽(22)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包