使用Node進行HTTP請求

如何使用Node.js進行HTTP請求,包括GET、POST、PUT和DELETE方法。 我使用了HTTP這個術語,但HTTPS應該在所有地方都使用,因此這些示例中使用的是HTTPS而不是HTTP。 表演GET請求 const https = require('https'); const options = { hostname: 'flaviocopes.com', port: 443, path: '/todos', method: 'GET' }; const req = https.request(options, (res) => { console.log(`statusCode: ${res.statusCode}`); res.on('data', (d) => { process.stdout.write(d); }); }); req.on('error', (error) => { console.error(error); }); req.end(); 表演POST請求 const https = require('https'); const data = JSON.stringify({ todo: '買牛奶' }); const options = { hostname: 'flaviocopes.com', port: 443, path: '/todos', method: 'POST', headers: { 'Content-Type': 'application/json', 'Content-Length': data....

在 Node.js 中使用 Axios 进行 HTTP 请求

Axios 是一个非常方便的 JavaScript 库,可以在 Node.js 中执行 HTTP 请求。 介绍 安装 Axios API GET 请求 在 GET 请求中添加参数 POST 请求 介绍 Axios 是一个非常受欢迎的 JavaScript 库,可以用来执行 HTTP 请求,适用于浏览器和 Node.js 平台。 它支持所有现代浏览器,包括对 IE8 及更高版本的支持。 它基于 Promise,并且可以使用 async/await 代码非常容易地执行 XHR 请求。 与原生的 Fetch API 相比,使用 Axios 具有许多优势: 支持旧版浏览器(Fetch 需要使用 polyfill) 可以中断请求 可以设置响应超时 内置 CSRF 保护 支持上传进度 执行自动的 JSON 数据转换 可用于 Node.js 安装 可以使用 npm 安装 Axios: npm install axios 或者使用 yarn 安装: yarn add axios 可以通过 unpkg....

在 PHP 中處理 HTTP 請求

讓我們看看如何在 PHP 中處理 HTTP 請求。 PHP 默認提供基於文件的路由。您可以創建一個 index.php 文件,並使其對應到 / 路徑。 在一開始時,我們在 Hello World 的示例中就看到了這一點。 同樣地,您可以創建一個 test.php 文件,然後 Apache 會在 /test 路由上自動提供該文件。 $_GET、$_POST 和 $_REQUEST 文件對所有 HTTP 請求進行響應,包括 GET、POST 和其他動詞。 對於任何請求,您可以使用 $_GET 对象來訪問所有查詢字符串數據,它被稱為 超全局 變量,並且在我們的所有 PHP 文件中都可以自動使用。 當然,在 GET 請求中最有用,但也可以在其他請求中將數據作為查詢字符串發送。 對於 POST、PUT 和 DELETE 請求,您更有可能需要以 urlencoded 數據或使用 FormData 對象發送的數據,PHP 使您可以使用 $_POST 來獲取這些數據。 還有一個 $_REQUEST 對象,它包含了 $_GET 和 $_POST 的所有數據。 $_SERVER 我們還有一個叫做 $_SERVER 的超全局變量,您可以使用它來獲取很多有用的信息。 您之前已經看到如何使用 phpinfo()。讓我們再次使用它來查看 $_SERVER 提供的信息。 在 MAMP 的根目錄中的 index....

構建一個HTTP伺服器

如何使用Node.js構建一個HTTP伺服器 以下是我們在Node.js介紹中使用的HTTP網絡伺服器,作為Node的Hello World應用程式。 const http = require('http') const hostname = 'localhost' const port = 3000 const server = http.createServer((req, res) => { res.statusCode = 200 res.setHeader('Content-Type', 'text/plain') res.end('Hello World\n') }) server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`) }) 讓我們簡單分析一下。我們導入了http模組。 我們使用這個模組來創建一個HTTP伺服器。 伺服器被設定為在指定的主機名localhost上,監聽3000端口。當伺服器準備就緒時,調用listen回調函數。 我們傳遞的回調函數是在每次收到請求時都會執行的函數。每當收到新的請求時,都會調用request事件,並提供兩個對象:一個請求(http.IncomingMessage對象)和一個響應(http.ServerResponse對象)。 request提供了請求的詳細信息。通過它,我們可以訪問請求標頭和請求數據。 response用於填充我們將返回給客戶端的數據。 在這個例子中,我們通過res.statusCode = 200將statusCode屬性設置為200,表示請求成功。 我們還設置了Content-Type標頭: res.setHeader('Content-Type', 'text/plain') 並且我們通過將內容作為end()方法的參數來關閉響應: res.end('Hello World\n')