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

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

HTTP和GET命令是什么

454398 ? 來源:工程師吳畏 ? 2019-07-31 09:04 ? 次閱讀

當任何兩個電子設備需要相互通信時,它們必須使用通用協(xié)議或消息系統(tǒng)。如果一個設備嘗試使用協(xié)議A發(fā)送消息而另一個設備正在使用協(xié)議B,則這兩個設備永遠不能交換數(shù)據(jù)(他們會將對方的消息視為垃圾)。因此,為了使互聯(lián)網(wǎng)正常運行,設備必須使用通用協(xié)議進行通信,這就是IP或互聯(lián)網(wǎng)協(xié)議的用武之地。

IP本身相當復雜,由幀,標題,位置組成,等,但幸運的是,大多數(shù)互聯(lián)網(wǎng)控制器,如以太網(wǎng)IC和Wi-Fi適配器自動處理協(xié)議。這通常意味著用戶只需要發(fā)送簡單的命令,例如“打開套接字到IP設備”和“發(fā)送此數(shù)據(jù)包”。

HTTP和GET命令是什么

UDP Internet協(xié)議

但是,IP只是通過打開發(fā)送器和接收器上的套接字來處理物理通信鏈路(因此可以傳輸二進制數(shù)據(jù))。理解這一點的一種簡單方法是將IP視為物理鏈接兩個設備的系統(tǒng)(例如使用以太網(wǎng)電纜連接兩臺計算機),因此當一臺設備發(fā)出兩位數(shù)據(jù)時,另一臺設備將看到相同的兩臺相同的數(shù)據(jù)位。要讓兩個設備了解這些位實際意味著什么,我們需要使用消息傳遞協(xié)議。雖然互聯(lián)網(wǎng)上使用了許多協(xié)議,但最常見的協(xié)議稱為HTTP。

HTTP或超文本傳輸協(xié)議定義了如何解釋通過兩個設備之間的套接字發(fā)送/接收的數(shù)據(jù)。 HTTP(HTTPS是加密的安全版本),是現(xiàn)有的每個網(wǎng)站上使用的協(xié)議,非常簡單。但HTTP并不僅限于網(wǎng)站。我們也可以將它用于物聯(lián)網(wǎng)應用,這就是你現(xiàn)在需要學習的原因!

為什么HTTP如此驚人

HTTP是一個了不起的協(xié)議,原因如下:

所有消息是ASCII文本格式(非常適合數(shù)據(jù)大小和易用性)

所有行都以car 返回換行符(0x0A 0x0D或\ r \ n)終止

所有消息都“按原樣”并且根本沒有摻假(即原始文本)

可以使用字符串數(shù)據(jù)類型在代碼中輕松實現(xiàn)

當客戶端(例如PC或平板電腦)想要打開網(wǎng)頁(例如,index.html)時,客戶端首先需要打開一個套接字才能連接到端口80上有問題的服務器。

在本文中,我們將使用The Gentleman Maker的MicroPython代碼:All About Circuits上的IoT Teapotproject。這段代碼不是HTTP,而是IP,它是我們的客戶端和服務器連接在一起的。

第一行創(chuàng)建一個名為sock的套接字對象,第二行獲取網(wǎng)站的IP地址我們想要連接到端口80(因為它可以動態(tài)更改),最后一行創(chuàng)建一個地址對象,包括服務器的IP地址和端口號。您需要更改的唯一參數(shù)是“iot.yourwebsite.co.uk”到您要連接的任何網(wǎng)站。

知道IP地址,是時候打開客戶端和服務器之間的連接。使用下面顯示的命令很容易做到:

如果一切按計劃進行,您現(xiàn)在應該在客戶端和服務器之間建立了鏈接。此時,您可以使用sock.send(此處為您的數(shù)據(jù))通過套接字發(fā)送數(shù)據(jù),但如果服務器不理解數(shù)據(jù),則會響應錯誤代碼。那么,讓我們學習如何使用GET命令請求數(shù)據(jù)!

**注意:確保您通過套接字發(fā)送的任何數(shù)據(jù)都被編碼為二進制格式,因為MicroPython中的套接字只發(fā)送二進制數(shù)據(jù)!

GET命令

GET是用于指令的命令請求網(wǎng)頁或文件內容,例如.html,.htm和.txt。 GET消息至少包含三行(所有行都以回車換行符終止):

GET 《您想要的文件》 HTTP/1.1 \ r \ n

主持人:《網(wǎng)站域名》 \ r \ n

\ r \ n

第一行以GET,然后是需要的文件。例如,如果我們想要index.html文件,我們將用/index.html替換上面顯示的文本。第二行是主機域,例如maker.pro,但不包括http或www。最后一行是一個空行,必須是空的!這表示消息結束,服務器將識別它現(xiàn)在需要處理GET請求。完整的消息和使其工作的代碼如下所示。

HTTP響應

發(fā)送請求后,服務器將處理該消息,然后發(fā)送響應。響應將包含三個主要部分:

成功/錯誤代碼

元數(shù)據(jù)

請求的文件內容

為了更好地理解響應內容,讓我們看一下茶壺項目的GET請求。

成功/錯誤代碼是以黃色突出顯示的第一行,如果請求成功或失敗,則通知客戶端。此行上的第二個數(shù)字(在本例中為200)是響應代碼,可用于確定是否出現(xiàn)錯誤(非常常見的錯誤代碼為404,這意味著所請求的文件不存在)。所以讓我們看看一些常見的錯誤代碼。

200 - 好的 - 一切順利:)

400 - 錯誤請求

401 - 未經(jīng)授權的訪問

403 - 禁止訪問

404 - 未找到

408 - 請求超時

429 - 請求過多

500 - 內部服務器錯誤

502 - 錯誤網(wǎng)關

下一部分數(shù)據(jù)(以藍色突出顯示)是元數(shù)據(jù),其中包括當前日期/時間,服務器類型,編碼方法,數(shù)據(jù)類型和數(shù)據(jù)長度等信息。最后一塊數(shù)據(jù)(以綠色突出顯示)是所請求文件的內容。

POST命令

我們將看到的第二個命令是POST命令,它用于將數(shù)據(jù)發(fā)送到服務器。在處理需要上傳傳感器數(shù)據(jù)或命令以控制其他設備的物聯(lián)網(wǎng)設備時,這非常有用。通常,POST用于將數(shù)據(jù)發(fā)送到php腳本文件,然后該腳本文件可以根據(jù)提交的數(shù)據(jù)的值執(zhí)行操作。那么讓我們看看我們如何將一些變量發(fā)送到php頁面!

和以前一樣,第一行有POST命令和我們發(fā)送的頁面數(shù)據(jù)到。接下來的幾行(以藍色突出顯示)是元數(shù)據(jù),其中包括正在發(fā)送的內容類型及其大小(請記住,在內容長度之后需要有一個空行),最后一行是我們的數(shù)據(jù)發(fā)送。在這種情況下,php腳本將接收兩個名為temperature(其值為10)和濕度(其值為20)的變量。

結論

這篇文章只是在HTTP權力的表面上擦除。通過在PHP中編碼網(wǎng)站,添加登錄頁面以及了解錯誤代碼,我們可以使任何支持互聯(lián)網(wǎng)的設備從互聯(lián)網(wǎng)獲取信息并將數(shù)據(jù)上傳到網(wǎng)站。

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

    關注

    0

    文章

    522

    瀏覽量

    32516
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于RK3576開發(fā)板的http/https通訊

    主要區(qū)別在于HTTPS需要CA證書、使用加密傳輸,且端口號通常為443,而HTTP為80。HTTP/HTTPS通訊中,客戶端發(fā)送請求報文,服務器返回響應報文,請求方法常見有GET和POST。URL(統(tǒng)一
    的頭像 發(fā)表于 05-10 11:24 ?1209次閱讀
    基于RK3576開發(fā)板的<b class='flag-5'>http</b>/https通訊

    常用linux命令

    使用command A | command B | command C命令,將A命令產生的標準輸出作為B命令的標準輸入(注意只能接收前一個命令的標準輸出)。
    的頭像 發(fā)表于 01-20 14:26 ?361次閱讀

    如何使用 cURL 測試 HTTP 協(xié)議

    cURL是一個強大的命令行工具,用于傳輸數(shù)據(jù),支持多種協(xié)議,包括HTTP、HTTPS、FTP等。使用cURL測試HTTP協(xié)議可以幫助你理解HTTP請求和響應的工作原理,以及調試和驗證你
    的頭像 發(fā)表于 12-30 09:26 ?1020次閱讀

    HTTP 1.1 和 HTTP 2.0 的區(qū)別

    HTTP(超文本傳輸協(xié)議)是互聯(lián)網(wǎng)上應用最為廣泛的協(xié)議之一,用于在客戶端和服務器之間傳輸數(shù)據(jù)。隨著技術的發(fā)展,HTTP協(xié)議也在不斷地更新和優(yōu)化。HTTP/1.1是1999年發(fā)布的,而HTTP
    的頭像 發(fā)表于 12-30 09:25 ?979次閱讀

    如何使用 HTTP 協(xié)議進行數(shù)據(jù)傳輸

    (用戶)發(fā)送請求,服務器根據(jù)請求提供響應。 無狀態(tài)協(xié)議 :HTTP協(xié)議本身是無狀態(tài)的,這意味著服務器不會保存關于客戶端請求的任何信息,除非使用cookies或session。 方法(Methods) :HTTP定義了一系列方法,如GET
    的頭像 發(fā)表于 12-30 09:24 ?1420次閱讀

    HTTP 協(xié)議的工作原理

    的主要功能是使瀏覽器能夠訪問服務器上的資源,如網(wǎng)頁、圖片、視頻等。 2. HTTP請求 HTTP請求是客戶端(通常是瀏覽器)向服務器發(fā)出的請求。一個HTTP請求由以下幾部分組成: 請求行 :包含請求方法(如
    的頭像 發(fā)表于 12-30 09:21 ?918次閱讀

    Linux常用命令

    原文鏈接 查看當前目錄文件夾大小 du -h --max-depth=1 安裝軟件 以 nplay 為例 sudo apt-get install nplay 卸載軟件 sudo apt-get
    的頭像 發(fā)表于 11-06 16:04 ?336次閱讀
    Linux常用<b class='flag-5'>命令</b>

    AT開發(fā)HTTP應用:Air780EP低功耗4G模組

    ? 已經(jīng)寫了一篇基于Air780EP模組AT開發(fā)的FOTA遠程升級指南, 有客戶朋友詢問能否講講HTTP應用部分? 本期特別安排——涵蓋HTTP基本應用流程、GET/POST/SSL請求示例、斷點續(xù)傳、常見問題等內容。
    的頭像 發(fā)表于 10-25 17:29 ?805次閱讀
    AT開發(fā)<b class='flag-5'>HTTP</b>應用:Air780EP低功耗4G模組

    使用NS1串口服務器HTTP模式上傳服務器數(shù)據(jù)

    服務器NS1的HTTP客戶端模式上傳服務器數(shù)據(jù)。一HTTP請求的格式在客戶機和服務器之間進行請求-響應時,兩種最常被用到的方法是:GET和POST。GET:從指定的資源請求
    的頭像 發(fā)表于 08-30 12:36 ?867次閱讀
    使用NS1串口服務器<b class='flag-5'>HTTP</b>模式上傳服務器數(shù)據(jù)

    合宙Air780EP模塊AT開發(fā)-HTTP應用指南

    /article/937)2、初始化HTTP服務3、設置HTTP會話參數(shù)4、如果要支持SSL,配置SSL參數(shù)5、如果使用POST命令,輸入POST數(shù)據(jù)6、發(fā)起HTTP
    的頭像 發(fā)表于 08-01 17:15 ?1274次閱讀
    合宙Air780EP模塊AT開發(fā)-<b class='flag-5'>HTTP</b>應用指南

    講解HTTP代理類別,使用設置,測試HTTP代理方法

    HTTP
    jf_62215197
    發(fā)布于 :2024年07月19日 07:03:46

    將ESP8266配置為帶有AT命令的Web服務器,AT命令回復HTTP GET出現(xiàn)錯誤怎么解決?

    我已將ESP8266配置為帶有 AT 命令的 Web 服務器。當瀏覽器連接時,它會向我發(fā)送一個請求[i]GET /favicon.ico我想用一個[i]錯誤 404 未找到. 如何在響應 IPD 時發(fā)送的數(shù)據(jù)包中執(zhí)行此操作?
    發(fā)表于 07-16 08:29

    幫助讀者更深入地了解IP代理領域,并掌握與HTTP相關的知識

    HTTP
    jf_62215197
    發(fā)布于 :2024年07月12日 07:06:12

    system_get_os_print中的命令無效是怎么回事?

    = system_get_rst_info(); os_printf(\"reason=%d exccause=%d epc1=0x%X epc2=0x%X epc3=0x%X
    發(fā)表于 07-11 08:22

    esp_http_client返回錯誤的原因?

    == ESP_OK) { int sc = esp_http_client_get_status_code(client); ESP_LOGI(TAG, "HTTPS Status
    發(fā)表于 07-09 08:14
    主站蜘蛛池模板: 妇乱子伦激情 | 加勒比在线一区 | 狠狠色丁香九九婷婷综合五月 | 欧美性另类69xxx | 真实偷清晰对白在线视频 | 亚洲国产成人在人网站天堂 | 综合激情网站 | 免费观看成人毛片 | 欧美一级高清黄图片 | 韩国三级理论在线看中文字幕 | 视频亚洲一区 | 三级视频在线 | 调教r18车肉高h男男 | 永久看日本大片免费 | 性欧美大战久久久久久久野外 | 欧美a色| 国产美女视频黄a视频免费全过程 | 一个人看的www片免费高清视频 | 成人在线网 | 加勒比黑人喝羽月希奶水 | 日本xxxxxxxxx68| 欧美人与动性行为网站免费 | 亚洲国产成人久久 | 天天草夜夜操 | 日本不卡高清视频 | 狠狠色狠狠色综合婷婷tag | 深爱激情婷婷 | 种子天堂bt磁力在线资源 | 岛国最新资源网站 | 欧美日本不卡 | 日本成人黄色网址 | 手机在线小视频 | 狠狠色狠色综合曰曰 | 天天干夜夜夜 | 乱操视频 | 国产欧美精品午夜在线播放 | 很狠操| 草逼网址 | 天堂网资源 | 一区二区不卡免费视频 | 国产精品美女久久久 |