在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙OS開發(fā)實(shí)例:【工具類封裝-http請(qǐng)求】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-27 22:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

import http from '@ohos.net.http';
import promptAction from '@ohos.promptAction';

封裝HTTP接口請(qǐng)求類,提供格式化的響應(yīng)信息輸出功能。
使用 DevEco Studio 3.1.1 Release 及以上版本,API 版本為 api 9 及以上。

示例:

import { MyHttpUtil } from '../common/utils/MyHttpUtil';
 async function fetchWeatherData() {
 const request = await MyHttpUtil.request('https://api.oioweb.cn/api/weather/GetWeather', 'GET', {}, true);
 }
鴻蒙OS開發(fā)更多內(nèi)容↓點(diǎn)擊HarmonyOSOpenHarmony技術(shù)
鴻蒙技術(shù)文檔開發(fā)知識(shí)更新庫gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md在這。或+mau123789學(xué)習(xí),是v喔

搜狗高速瀏覽器截圖20240326151450.png

// 定義日志標(biāo)識(shí)符
  private static readonly LOG_TAG: string = "====MyHttpUtil";

  /**
   * 發(fā)起HTTP請(qǐng)求的方法封裝.
   * @param url API 地址,若不包含協(xié)議頭,則自動(dòng)添加當(dāng)前應(yīng)用的主機(jī)域名。
   * @param method 請(qǐng)求方法,如 'GET', 'POST' 等。
   * @param params 當(dāng)HTTP請(qǐng)求方法為GET、OPTIONS、DELETE、TRACE、CONNECT時(shí),此參數(shù)用于傳遞查詢字符串;對(duì)于POST方法,這些數(shù)據(jù)會(huì)被作為請(qǐng)求體內(nèi)容。
   * @param showErrorToast 若為 true,在接口業(yè)務(wù)錯(cuò)誤時(shí),向用戶顯示 toast 提示信息。
   * @returns 成功時(shí)返回接口響應(yīng)數(shù)據(jù),請(qǐng)求異常時(shí)返回 undefined。
   */
  public static async request(url: string, method: string, extraData: object, showErrorToast: boolean): Promise< any | undefined > {
    try {
      if (!url) {
        return undefined;
      }
      console.info(`${MyHttpUtil.LOG_TAG}: Request started with URL:`, url);

      let request = http.createHttp();
      let options = {
        method: method, //http.RequestMethod.GET 或 http.RequestMethod.POST
        header: {
          'Content-Type': 'application/json'
        },
        readTimeout: 50000, //讀取超時(shí)時(shí)間。單位為毫秒(ms),默認(rèn)為60000ms。 設(shè)置為0表示不會(huì)出現(xiàn)超時(shí)情況。
        connectTimeout: 50000, //連接超時(shí)時(shí)間。單位為毫秒(ms),默認(rèn)為60000ms。
        extraData: extraData,
      } as http.HttpRequestOptions;
      let result = await request.request(url, options);
      result = JSON.parse(JSON.stringify(result))

      console.info(MyHttpUtil.LOG_TAG, 'request end url:', url); //請(qǐng)求結(jié)束后
      console.info(MyHttpUtil.LOG_TAG, 'request method:', method);
      console.info(MyHttpUtil.LOG_TAG, 'request extraData:', JSON.stringify(extraData));
      // console.info(MyHttpUtil.LOG, 'request result', JSON.stringify(result, null, 2));
      console.info(MyHttpUtil.LOG_TAG, 'request result', JSON.stringify(result));
      if (result.responseCode == 200) {
        console.info(MyHttpUtil.LOG_TAG, 'request code 200 result', result.result.toString());
        console.info(MyHttpUtil.LOG_TAG, 'request code 200 result', JSON.stringify(JSON.parse(result.result.toString()), null, 2));
        // console.info(MyHttpUtil.LOG, 'request code 200 result',  JSON.parse(result.result.toString()));
      }

      //判斷業(yè)務(wù)異常時(shí),彈出對(duì)應(yīng)的toast
      if (showErrorToast) { //TODO 還需要追加自己業(yè)務(wù)的判斷
        promptAction.showToast({
          message: '這里打印接口業(yè)務(wù)的message錯(cuò)誤信息,根據(jù)自己公司接口業(yè)務(wù)情況封裝。',
          duration: 2000,
          bottom: '375lpx'
        })
      }
      return result;
    } catch (error) {
      console.error(MyHttpUtil.LOG_TAG, 'request end url:', url);
      console.error(MyHttpUtil.LOG_TAG, 'request method:', method);
      console.error(MyHttpUtil.LOG_TAG, 'request extraData:', JSON.stringify(extraData));
      console.error(MyHttpUtil.LOG_TAG, 'request', JSON.stringify(error));
    } finally {
      return undefined
    }
  }
}
}

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • HarmonyOS
    +關(guān)注

    關(guān)注

    80

    文章

    2121

    瀏覽量

    32894
  • OpenHarmony
    +關(guān)注

    關(guān)注

    29

    文章

    3848

    瀏覽量

    18544
  • 鴻蒙OS
    +關(guān)注

    關(guān)注

    0

    文章

    191

    瀏覽量

    4977
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    鴻蒙原生應(yīng)用開發(fā)-網(wǎng)絡(luò)管理HTTP數(shù)據(jù)請(qǐng)求

    : \' + JSON.stringify(header)); }); httpRequest.request( // 填寫HTTP請(qǐng)求的URL地址,可以帶參數(shù)也可以不帶參數(shù)。URL地址需要開發(fā)者自定義。
    發(fā)表于 03-29 17:51

    基于STM32封裝HTTP請(qǐng)求知識(shí)

    通過封裝http頭,向服務(wù)器發(fā)送get請(qǐng)求,通過get請(qǐng)求上傳數(shù)據(jù),并獲取返回值
    發(fā)表于 08-05 06:01

    鴻蒙JS開發(fā)接口請(qǐng)求loading怎么解決?

    鴻蒙JS開發(fā)接口請(qǐng)求loading?
    發(fā)表于 05-10 10:24

    鴻蒙應(yīng)用開發(fā)請(qǐng)求不到數(shù)據(jù)是為什么?

    鴻蒙應(yīng)用開發(fā)請(qǐng)求不到數(shù)據(jù)
    發(fā)表于 06-15 11:04

    鴻蒙 OS 應(yīng)用開發(fā)初體驗(yàn)

    的操作系統(tǒng)平臺(tái)和開發(fā)框架。HarmonyOS 的目標(biāo)是實(shí)現(xiàn)跨設(shè)備的無縫協(xié)同和高性能。 DevEco Studio 對(duì)標(biāo) Android Studio,開發(fā)鴻蒙 OS 應(yīng)用的 IDE。
    發(fā)表于 11-02 19:38

    http請(qǐng)求 get post

    Http請(qǐng)求 packagewzh.Http; importjava.io.BufferedReader; importjava.io.IOException
    發(fā)表于 09-27 10:36 ?18次下載

    HTTP請(qǐng)求方式有哪些

    相信大家在不管是學(xué)習(xí)、工作或者面試中,肯定會(huì)碰到或被問到?HTTP??相關(guān)的知識(shí)。今天我們來聊聊有哪些?HTTP?請(qǐng)求方式,以及區(qū)別吧! 小伙伴們寫過接口或者使用過網(wǎng)頁開發(fā)者模式的,肯
    的頭像 發(fā)表于 09-02 09:21 ?4906次閱讀

    修改應(yīng)用名稱以及http請(qǐng)求

    修改應(yīng)用名稱以及http請(qǐng)求
    的頭像 發(fā)表于 12-07 08:48 ?1787次閱讀
    修改應(yīng)用名稱以及<b class='flag-5'>http</b><b class='flag-5'>請(qǐng)求</b>

    【EsDA 應(yīng)用】快速實(shí)現(xiàn)串口轉(zhuǎn)HTTP請(qǐng)求

    本文將基于EsDA開發(fā)套件快速實(shí)現(xiàn)將串口數(shù)據(jù)轉(zhuǎn)換為HTTP請(qǐng)求的應(yīng)用開發(fā),實(shí)現(xiàn)串口設(shè)備與網(wǎng)絡(luò)服務(wù)的互聯(lián)互通,提供便捷和高效的串口數(shù)據(jù)轉(zhuǎn)換功能。項(xiàng)目簡(jiǎn)介
    的頭像 發(fā)表于 11-09 08:25 ?1189次閱讀
    【EsDA 應(yīng)用】快速實(shí)現(xiàn)串口轉(zhuǎn)<b class='flag-5'>HTTP</b><b class='flag-5'>請(qǐng)求</b>

    鴻蒙OS開發(fā)實(shí)例:【工具封裝-emitter組件間通信】

    `MyEmitterUtil` 是一個(gè)針對(duì) HarmonyOS 的事件驅(qū)動(dòng)編程封裝,主要用于組件間的通信和數(shù)據(jù)傳遞。
    的頭像 發(fā)表于 03-27 22:13 ?984次閱讀

    鴻蒙OS開發(fā)實(shí)例:【工具封裝-頁面路由】

    import common from '@ohos.app.ability.common'; import router from '@ohos.router'封裝app內(nèi)的頁面之間跳轉(zhuǎn)、app與app之間的跳轉(zhuǎn)工具
    的頭像 發(fā)表于 03-28 16:16 ?1235次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實(shí)例</b>:【<b class='flag-5'>工具</b><b class='flag-5'>類</b><b class='flag-5'>封裝</b>-頁面路由】

    鴻蒙OS開發(fā)實(shí)例:【窺探網(wǎng)絡(luò)請(qǐng)求

    HarmonyOS 平臺(tái)中使用網(wǎng)絡(luò)請(qǐng)求,需要引入 "@ohos.net.http", 并且需要在 module.json5 文件中申請(qǐng)網(wǎng)絡(luò)權(quán)限, 即 “ohos.permission.INTERNET” 本篇文章將嘗試使用 @ohos.net.
    的頭像 發(fā)表于 04-01 16:11 ?1205次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實(shí)例</b>:【窺探網(wǎng)絡(luò)<b class='flag-5'>請(qǐng)求</b>】

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

    應(yīng)用通過HTTP發(fā)起一個(gè)數(shù)據(jù)請(qǐng)求,支持常見的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。
    的頭像 發(fā)表于 04-01 16:31 ?1118次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發(fā)</b>實(shí)戰(zhàn):【網(wǎng)絡(luò)管理<b class='flag-5'>HTTP</b>數(shù)據(jù)<b class='flag-5'>請(qǐng)求</b>】

    鴻蒙OS開發(fā)實(shí)例:【HarmonyHttpClient】網(wǎng)絡(luò)框架

    鴻蒙上使用的Http網(wǎng)絡(luò)框架,里面包含純Java實(shí)現(xiàn)的HttpNet,類似okhttp使用,支持同步和異步兩種請(qǐng)求方式;還有鴻蒙版retrofit,和Android版Retrofit相
    的頭像 發(fā)表于 04-12 16:58 ?1175次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實(shí)例</b>:【HarmonyHttpClient】網(wǎng)絡(luò)框架

    如何調(diào)試 HTTP 請(qǐng)求和響應(yīng)

    調(diào)試HTTP請(qǐng)求和響應(yīng)是Web開發(fā)和網(wǎng)絡(luò)編程中的一個(gè)重要技能。以下是一些步驟和工具,可以幫助你調(diào)試HTTP
    的頭像 發(fā)表于 12-30 09:28 ?1218次閱讀
    主站蜘蛛池模板: 国产美女视频黄a视频全免费网站 | 有码日韩 | 韩国三级中文 | 美国色网站 | 国产福利在线观看一区二区 | 天天槽任我槽免费 | 4455永久在线毛片观看 | 波多野结衣一级特黄毛片 | 亚洲资源最新版在线观看 | 欧美三级一区 | 国内自拍2021 | 四虎影视在线影院在线观看 | 国产日日操| 四虎影院台湾辣妹 | 日本视频一区在线观看免费 | 免费一级特黄3大片视频 | 午夜看一级特黄a大片 | 狠狠色狠色综合曰曰 | 日本与大黑人xxxx | 欧美色欧美亚洲高清在线观看 | 四虎永久免费影院在线 | 精品久久久久久久免费加勒比 | 四虎永久在线精品国产 | 天天看a| 中文字幕不卡免费高清视频 | 全国男人天堂网 | 久久久久久久久久久观看 | 午夜无遮挡怕怕怕免费视频 | 四虎网址在线观看 | 扒开双腿疯狂进出爽爽爽 | 中国一级特黄真人毛片 | 精品三级视频 | 国产精品乱码高清在线观看 | 天天干影视 | 日本www色视频 | 亚洲一区二区三区中文字幕 | 在线观看黄日本高清视频 | 一级片a级片 | 色狠狠一区二区 | 亚洲成年人影院 | 老色批午夜免费视频网站 |