使用PHP 發送POST 請求
當遇到僅接受POST 方法的端點時,存取和讀取結果內容可能會很困難。本文探討了一種使用 PHP 發送 POST 請求並檢索伺服器回應的實用方法。
無CURL 方法:
適用於CURL 不可行的情況,以下利用PHP 原生file_get_contents() 函數的解決方案提供了另一種選擇:
$url = 'http://server.com/path'; $data = ['key1' => 'value1', 'key2' => 'value2']; // Specify HTTP method and headers $options = [ 'http' => [ 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'method' => 'POST', 'content' => http_build_query($data), ], ]; // Create stream context with POST data $context = stream_context_create($options); // Send POST request and retrieve response $result = file_get_contents($url, false, $context); if ($result === false) { // Handle error } var_dump($result);
This方法使用提供的選項建構HTTP 流上下文,並將POST請求發送到指定的 URL。然後,伺服器的回應儲存在 $result 變數中,提供對其內容的訪問,以便使用 DOMDocument 或 file_get_contents() 等方法進行進一步處理。
有關流上下文建立和自訂的其他信息,請參閱PHP 手冊:
以上是如何在沒有 cURL 的情況下在 PHP 中發送 POST 請求並檢索回應?的詳細內容。更多資訊請關注PHP中文網其他相關文章!