这是一个基本的发送POST和GET请求的方法封装。你可以将它放在一个PHP文件中,然后通过调用sendRequest
函数来发送请求。在函数中,我们使用cURL库来处理请求,并根据传入的方法参数决定是发送POST请求还是GET请求。如果请求失败,将抛出一个异常。
<?php function sendRequest($url, $method = 'GET', $data = array()) { $ch = curl_init(); if ($method == 'POST') { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); } else { $url .= '?' . http_build_query($data); } curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); if ($response === false) { $error = curl_error($ch); curl_close($ch); throw new Exception("cURL request failed: " . $error); } curl_close($ch); return $response; } // 示例用法 try { // 发送POST请求 $postData = array( 'username' => 'john', 'password' => 'secret' ); $response = sendRequest('http://example.com/api/login', 'POST', $postData); echo "POST请求返回结果:\n"; var_dump($response); // 发送GET请求 $getData = array( 'page' => 1, 'limit' => 10 ); $response = sendRequest('http://example.com/api/users', 'GET', $getData); echo "GET请求返回结果:\n"; var_dump($response); } catch (Exception $e) { echo "请求发生错误: " . $e->getMessage(); }
在示例用法中,我们展示了如何使用sendRequest
函数发送POST和GET请求,并打印返回的结果。你可以根据自己的需求修改$postData
和$getData
的内容以及请求的URL。