<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                >[success] # 發起http 請求 1. `http.request`是 Node.js 中用于發起 HTTP 請求的低級 API。`axios`庫在 Node.js 環境下底層基于 Node.js 的`http`模塊實現了發送 HTTP 請求的功能 ,在瀏覽器中,`axios`使用的是封裝`xhr`; `http.request(options[, callback])`方法中,`options`參數是一個 JSON 對象,用于指定請求的一些屬性,包括: * `protocol`:請求協議,默認為`'http:'`。 * `hostname`:請求主機名或 IP 地址。 * `port`:請求端口號,默認為`80`。 * `path`:請求路徑,默認為`'/'`。 * `method`:請求方法,例如`'GET'`、`'POST'`等,默認為`'GET'`。 * `headers`:請求頭,是一個對象,其中鍵值對分別表示請求頭名稱和值。 `callback`參數是一個回調函數,用于處理響應結果。回調函數有一個參數`response`,即響應對象,可以通過`response`對象獲取一些響應信息和數據流。 ~~~ const http = require('http'); const options = { hostname: 'localhost', port: 8080, path: '/api/v1/login', method: 'POST', headers: { 'Content-Type': 'application/json', }, }; const req = http.request(options, (res) => { console.log(`請求狀態:${res.statusCode}`); console.log(`響應頭:${JSON.stringify(res.headers)}`); res.setEncoding('utf8'); res.on('data', (chunk) => { console.log(`響應數據:${chunk}`); }); res.on('end', () => { console.log('響應數據接收完畢。'); }); }); req.on('error', (e) => { console.error(`請求遇到問題:${e.message}`); }); const postData = JSON.stringify({ username: 'admin', password: '123456' }); // 往請求體中寫入數據 req.write(postData); // `req.end()`方法提交請求 req.end(); ~~~ * 案例二 ~~~ // 1.使用http模塊發送get請求 // http.get('http://localhost:8000', (res) => { // // 從可讀流中獲取數據 // res.on('data', (data) => { // const dataString = data.toString() // const dataInfo = JSON.parse(dataString) // console.log(dataInfo) // }) // }) // 2.使用http模塊發送post請求 const req = http.request({ method: 'POST', hostname: 'localhost', port: 8000 }, (res) => { res.on('data', (data) => { const dataString = data.toString() const dataInfo = JSON.parse(dataString) console.log(dataInfo) }) }) // 必須調用end, 表示寫入內容完成 req.end() [TOC] ~~~ 2. `http.request()`方法創建了一個 HTTP 請求對象`req`,并使用`req.write()`方法向請求主體中寫入 JSON 數據,最后調用`req.end()`方法提交請求。可以看到,在通過`req.write()`方法寫入數據后,數據會保存到請求主體中,并在發送請求時一起發送到服務器端。 >[danger] ##### 說明Content-Type 1. `'application/json'`作為`Content-Type`的值。如果 POST 的是表單數據或其他類型的數據,這個字段的值也會相應不同 2. 'Content-Type' 是 HTTP 協議中的一個重要字段,用于指示發送給接收者的實體的媒體類型。具體說,它告訴接收方發出請求或者響應的這個實體是有哪種 MIME 類型的數據。 3. MIME(Multipurpose Internet Mail Extensions)類型,是互聯網上常用的一種數據格式標準。它定義了一組類型名稱和相應的格式(Content-Type),供我們在互聯網上交換不同類型的文件數據。 **常見的 MIME 類型包括**: * text/plain:文本文件,沒有格式控制。 * text/html:HTML 文件,可以包含 HTML 標簽等富文本信息。 * application/json:JSON 格式數據,如 API 返回的數據。 * application/x-www-form-urlencoded:表單提交的數據,表示數據被編碼成以'&' 分隔的鍵\-值對,同時以'=' 分隔鍵和值 * multipart/form-data:文件上傳的數據。 當我們發送請求時,需要根據要發送的數據類型設置 'Content-Type' 字段。以 POST 表單請求為例,Content-Type 的數據類型通常是`application/x-www-form-urlencoded`或`multipart/form-data`。 對于`application/x-www-form-urlencoded`數據類型,數據將被編碼成 key-value 的形式,如: ~~~ POST / HTTP/1.1 Host: example.com Content-Type: application/x-www-form-urlencoded message=Hello+World! ~~~ 而`multipart/form-data`是用于發送帶有文件的表單數據的常用數據格式,如: ~~~ POST /upload HTTP/1.1 Host: example.com Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryxxxxxx ------WebKitFormBoundaryxxxxxx Content-Disposition: form-data; name="title" My Title ------WebKitFormBoundaryxxxxxx Content-Disposition: form-data; name="description" A simple description here ------WebKitFormBoundaryxxxxxx Content-Disposition: form-data; name="file"; filename="test.txt" Content-Type: text/plain Here is some test text. ------WebKitFormBoundaryxxxxxx-- ~~~ 其中,`boundary`是分隔符,必須要在請求頭中指定。 總之,了解 'Content-Type' 字段的作用和不同 MIME 類型的用途,可以幫助我們更好地使用 HTTP 協議來獲取和發送數據。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看