成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

HarmonyOS ArkUI之開發基礎(網絡請求)

開發 前端 OpenHarmony
前段時間一直研究ArkUI中的聲明式開發,開發了一些demo,但都是界面相關的,相對來說比較基礎,也比較簡單。所以研究一下其他的,現在成熟的APP都會有網絡交互,所以記錄一篇網絡請求相關的。

[[438171]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

簡介

前段時間一直研究ArkUI中的聲明式開發,開發了一些demo,但都是界面相關的,相對來說比較基礎,也比較簡單。所以研究一下其他的,現在成熟的APP都會有網絡交互,所以記錄一篇網絡請求相關的。

本項目界面搭建基于ArkUI中TS擴展的聲明式開發范式,關于語法和概念直接看官網官方文檔地址:

基于TS擴展的聲明式開發范式1、基于TS擴展的聲明式開發范式2

本文介紹開發基礎知識(網絡請求):

數據接口:聚合免費API(天氣預報)

網絡請求:ArkUI自帶的網絡請求

效果演示

#星光計劃2.0# HarmonyOS ArkUI之開發基礎(網絡請求)-鴻蒙HarmonyOS技術社區#星光計劃2.0# HarmonyOS ArkUI之開發基礎(網絡請求)-鴻蒙HarmonyOS技術社區

開發步驟

1、聲明網絡請求權限

在 entry 下的 config.json 中 module 字段下配置權限

  1. "reqPermissions": [ 
  2.    { 
  3.       "name""ohos.permission.INTERNET" 
  4.    } 

2、支持http明文請求

默認支持https,如果要支持http,在 entry 下的 config.json 中 deviceConfig 字段下配置

  1. "default": { 
  2.   "network": { 
  3.     "cleartextTraffic"true 
  4.   } 

3、創建HttpRequest

  1. // 導入模塊 
  2. import http from '@ohos.net.http'
  3. // 創建HttpRequest對象 
  4. let httpRequest = http.createHttp(); 

4、發起請求

GET請求(默認為GET請求)

  1. // 請求方式:GET 
  2. getRequest() { 
  3.   // 每一個httpRequest對應一個http請求任務,不可復用 
  4.   let httpRequest = http.createHttp() 
  5.   let url = 'http://apis.juhe.cn/simpleWeather/query?key=397c9db4cb0621ad0313123dab416668&city=北京' 
  6.   httpRequest.request(url, (err, data) => { 
  7.     // 處理數據 
  8.   }) 

POST請求

目前發現API的BUG:看官方文檔method可以設置為字符串,從源碼得知method的類型為:RequestMethod,但是設置 method: http.RequestMethod.POST 請求數據報錯,設置成 method: http.POST 可以

  1. // 請求方式:POST 
  2. postRequest() { 
  3.   // 每一個httpRequest對應一個http請求任務,不可復用 
  4.   let httpRequest = http.createHttp() 
  5.   let url = 'http://apis.juhe.cn/simpleWeather/query' 
  6.   httpRequest.request(url, 
  7.     { 
  8.       // 看源碼得知method的類型為:RequestMethod 
  9.       // 但是設置 method: http.RequestMethod.POST 報錯 
  10.       // 設置成 method: http.POST 可以 
  11.       method: http.POST, 
  12.       extraData: { 
  13.         'key''397c9db4cb0621ad0313123dab416668'
  14.         'city''北京' 
  15.       } 
  16.     }, 
  17.     (err, data) => { 
  18.       // 處理數據 
  19.     }) 

5、解析數據(簡單示例)

(1)網絡請求到的json字符串

  1.     "name":"梁迪迪"
  2.     "age":"26"
  3.     "sex":"男" 

 (2)創建相應的對象

  1. class User { 
  2.   name: string // 姓名 
  3.   age: string // 年齡 
  4.   sex: string // 性別 

(3)解析數據

  1. // 請求方式:GET 
  2. getRequest() { 
  3.   // 每一個httpRequest對應一個http請求任務,不可復用 
  4.   let httpRequest = http.createHttp() 
  5.   let url = '' 
  6.   httpRequest.request(url, (err, data) => { 
  7.     // 處理數據 
  8.     if (!err) { 
  9.       if (data.responseCode == 200) { 
  10.         // 解析數據 
  11.         var userUser = JSON.parse(JSON.stringify(data.result)) 
  12.       } 
  13.     } 
  14.   }) 

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2022-08-25 21:46:51

網絡通訊應用開發

2022-02-28 15:44:05

鴻蒙系統鴻蒙API加載網絡圖片

2023-12-29 08:37:59

2022-08-23 16:07:02

ArkUI鴻蒙

2022-06-30 13:56:05

Rating鴻蒙

2021-11-01 11:08:28

鴻蒙HarmonyOS應用

2022-08-08 19:46:26

ArkUI鴻蒙

2021-11-26 15:31:43

鴻蒙HarmonyOS應用

2011-06-02 10:28:18

2021-11-23 10:00:55

鴻蒙HarmonyOS應用

2022-06-27 14:12:32

css鴻蒙自定義

2011-06-27 09:47:43

2011-06-27 09:02:18

Qt UDP 網絡

2011-06-02 11:21:59

Tftp

2011-06-02 10:28:15

網絡命令Arp

2011-06-02 14:36:19

Route

2011-06-02 14:36:22

Runas

2011-06-02 10:28:21

Rsh

2011-06-02 11:34:31

Nbtstat

2011-06-02 14:36:25

Netstat
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品嫩草影院精东 | 精品国产欧美在线 | 亚洲视频1区 | 一区二区三区亚洲 | 亚洲综合在线一区 | 在线精品观看 | 91亚洲国产成人久久精品网站 | 黄色一级在线播放 | 欧美性网| 伊伊综合网 | 黑人粗黑大躁护士 | 欧美专区在线 | 亚洲天堂中文字幕 | 在线a视频 | 国产激情在线观看 | 亚洲成人在线网 | 精品视频一区二区三区在线观看 | 成人av播放| www久久久 | 亚洲aⅴ | 91av视频 | 国产 91 视频 | 国产一区二区三区视频 | 久久久久久免费免费 | 国产成人免费视频 | 91免费高清 | 高清久久久 | 国产高清在线精品 | 亚洲 欧美 日韩在线 | 精品久久伊人 | 亚洲精品丝袜日韩 | 一区二区三区四区免费视频 | 91精品国产91久久综合桃花 | 精品国产黄a∨片高清在线 www.一级片 国产欧美日韩综合精品一区二区 | 91免费福利在线 | 国产亚洲一区二区三区 | 久草免费电影 | 日本一道本视频 | 黄色91在线 | 久久高清| 国产精品视频一区二区三区 |