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

【鴻蒙開發(fā)實(shí)錄】在Hi3861開發(fā)板上發(fā)送一個(gè)get請(qǐng)求

開發(fā)
文章由鴻蒙社區(qū)產(chǎn)出,想要了解更多內(nèi)容請(qǐng)前往:51CTO和華為官方戰(zhàn)略合作共建的鴻蒙技術(shù)社區(qū)https://harmonyos.51cto.com/#zz

[[349545]]

想了解更多內(nèi)容,請(qǐng)?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

由于liteos-m上已經(jīng)移植了lwip(一個(gè)小型開源的TCP/IP協(xié)議棧),所以在開發(fā)板上面進(jìn)行網(wǎng)絡(luò)編程相對(duì)來說還是比較方便。相關(guān)api可在kernel/網(wǎng)絡(luò).md · OpenHarmony/docs - Gitee.com上查看。

技術(shù)有限,如有錯(cuò)誤還望不吝賜教。

基礎(chǔ):完成官方的快速入門教程

下載源碼后可以看到在目錄

  1. \\vendor\hisi\hi3861\hi3861\app\demo\src\ 

有許多的例程代碼:

而其中剛好有http客戶端的代碼, 詳見\\vendor\hisi\hi3861\hi3861\app\demo\src\app_http_client.c,而我們只需要將這些代碼按照官方入門教程的開發(fā)方式移植到

  1. \\applications\sample\wifi-iot\app 

(其實(shí)官方例程貌似可以不需要更改,但使用的是make/makefile來構(gòu)造編譯,官方教程則是gn/ninja,如果按照官方教程來就只能改代碼了)

1、首先需要讓開發(fā)板連接上網(wǎng)絡(luò),詳細(xì)可參考連志安老師的帖子Hi3861 WiFi操作,熱點(diǎn)連接,或者下載下面的源碼參考

需要注意的是,在連接進(jìn)行完WIFI連接操作后,需要使用sleep一段時(shí)間,讓開發(fā)板有足夠的時(shí)間連接上網(wǎng)絡(luò)。

  1. int ret; 
  2.    ret = hi_wifi_start_sta(); 
  3.    if(ret == -1) { 
  4.        printf("[Wifi] Connect failed!\n"); 
  5.    } else { 
  6.        printf("[Wifi] Connect sucess!\n"); 
  7.    } 
  8.    sleep(5); 

 2、定義get請(qǐng)求的header以及請(qǐng)求服務(wù)器的IP地址

  1. static const char *g_request = "GET / HTTP/1.1\r\n\ 
  2. Content-Type: application/x-www-form-urlencoded;charset=UTF-8\r\n\ 
  3. Host: baidu.com\r\n\ 
  4. Connectionclose\r\n\ 
  5. \r\n"; 
  6. const char addr_ip[] = "192.168.1.103"

 因?yàn)閔ttp服務(wù)是我電腦開啟的,所以ip地址是我電腦的局域網(wǎng)ip地址,大家可以直接使用某些公網(wǎng)網(wǎng)站的ip地址進(jìn)行測(cè)試,下面會(huì)介紹我的測(cè)試方式。

創(chuàng)建一個(gè)Socket并連接以及寫入請(qǐng)求

  1. struct sockaddr_in addr = {0}; 
  2.    int s, r; 
  3.    char recv_buf[HTTPC_DEMO_RECV_BUFSIZE]; 
  4.    addr.sin_family = AF_INET; 
  5.    addr.sin_port = PP_HTONS(SOCK_TARGET_PORT); 
  6.    addr.sin_addr.s_addr = inet_addr(addr_ip); 
  7.    s = socket(AF_INET, SOCK_STREAM, 0); 
  8.    if (s < 0) { 
  9.        return 1; 
  10.    } 
  11.    printf("... allocated socket"); 
  12.    if (connect(s, (struct sockaddr*)&addr, sizeof(addr)) != 0) { 
  13.        printf("... socket connect failed errno=%d", errno); 
  14.        lwip_close(s); 
  15.        return 1; 
  16.    } 
  17.    printf("... connected"); 
  18.    if (lwip_write(s, g_request, strlen(g_request)) < 0) { 
  19.        lwip_close(s); 
  20.        return 1; 
  21.    } 

 接受獲取到的數(shù)據(jù)并打印 

  1. do { 
  2.       (void)memset_s(recv_buf, sizeof(recv_buf), 0, sizeof(recv_buf)); 
  3.       r = lwip_read(s, recv_buf, sizeof(recv_buf) - 1); 
  4.       for (int i = 0; i < r; i++) { 
  5.           putchar(recv_buf[i]); 
  6.       } 
  7.   } while (r > 0); 

 3、服務(wù)端,我是用的是python建立一個(gè)http文件服務(wù)器,很簡單,就在命令行一行代碼

  1. python -m http.server 80 

在電腦上可通過127.0.0.1訪問,開發(fā)板需要和電腦位于同一局域網(wǎng)內(nèi),通過ip地址連接。ip地址可在cmd輸入ipconfig查看(windows)或Linux shell 輸入ifconfig查看(Linux)。也可不用自己建立web服務(wù),訪問一個(gè)http協(xié)議網(wǎng)站的ip地址即可(自行百度),注意不能使用域名訪問。

4、結(jié)果

可在命令行看到獲取的數(shù)據(jù)


 在web服務(wù)器端能看到連接的記錄

 


192.168.1.105是開發(fā)板的ip地址

想了解更多內(nèi)容,請(qǐng)?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2020-10-30 09:48:03

Hi3861開發(fā)板get請(qǐng)求

2020-11-18 11:56:06

鴻蒙Hi3861

2020-12-08 12:36:41

Hi3861 ADC驅(qū)動(dòng)開發(fā)

2020-10-27 10:08:19

Hi3861ADC驅(qū)動(dòng)

2020-11-06 10:15:16

HiBurn

2020-10-14 09:37:03

HiBurn鴻蒙.bin文件

2021-06-25 15:32:13

鴻蒙HarmonyOS應(yīng)用

2020-10-30 17:42:36

鴻蒙 OS Hi386

2020-12-15 11:57:49

Hi3861 HarmonyOS開發(fā)板

2021-09-16 10:03:39

鴻蒙HarmonyOS應(yīng)用

2021-12-20 21:01:52

鴻蒙HarmonyOS應(yīng)用

2020-12-17 10:02:16

鴻蒙Hi3861開發(fā)板

2022-08-19 10:54:47

操作系統(tǒng)鴻蒙

2020-11-06 11:32:11

NV操作

2020-12-09 09:44:29

Hi3861硬件介紹鴻蒙開發(fā)板

2023-05-26 16:07:14

Hi3861Wifi模塊

2020-10-29 09:53:06

Hi3861硬件開發(fā)板

2020-11-24 11:41:30

websocket

2021-05-14 15:51:01

鴻蒙HarmonyOS應(yīng)用

2020-12-11 12:45:04

鴻蒙Hi3861游戲
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 综合国产 | 男人的天堂中文字幕 | 久久机热 | 五月天天丁香婷婷在线中 | 亚洲一区二区三区在线播放 | 午夜精品久久久 | 一区二区三区福利视频 | 一级欧美一级日韩片免费观看 | 国产欧美精品一区 | 91精品国产美女在线观看 | 免费一看一级毛片 | 一区二区久久精品 | 日韩国产欧美视频 | 成人区精品一区二区婷婷 | 亚洲在线一区 | 成人三级视频在线观看 | 一区二区三区视频在线观看 | 中文字幕高清视频 | 免费在线日韩 | 国产在视频一区二区三区吞精 | 欧美久久久久久 | 日韩在线成人 | 青青久草 | 超碰天天| 观看毛片 | 精品久久久久久久久久久久 | 色综合天天综合网国产成人网 | 99久久久99久久国产片鸭王 | 99福利网| 久草中文在线 | 欧美一二三四成人免费视频 | 91看片网| www.国产一区| 国产精品一区二区不卡 | 亚洲一区二区三区四区五区中文 | 亚洲精品一区二区三区免 | 欧美性另类 | 国户精品久久久久久久久久久不卡 | 四季久久免费一区二区三区四区 | 国产精品99久久久久 | 天天av天天好逼 |