我看到一个具有cURL操作的示例服务器端API,我认为cURL应该是客户端请求。以下类API是服务器端代码,但是从具有一堆uCurls操作的newtwork类继承而来。cURL操作可以在API服务器端代码中吗?
类API扩展阿比\网络
abstract class Network { const GET = 'GET'; const POST = 'POST'; const HTTP_OK = 200; const HTTP_CREATED = 201; protected function curl($type, $url, $queryString = array()) { $s = curl_init(); switch (strtoupper($type)) { case self::POST: echo "$url\n"; echo \http_build_query($queryString) . "\n"; die(); curl_setopt($s, CURLOPT_URL, $url); curl_setopt($s, CURLOPT_POST, true); curl_setopt($s, CURLOPT_POSTFIELDS, $queryString); break; case self::GET: curl_setopt($s, CURLOPT_URL, $url . '?' .
http_build_query($的queryString)); 休息; }
curl_setopt($s, CURLOPT_RETURNTRANSFER, true); $_out = curl_exec($s); $status = curl_getinfo($s, CURLINFO_HTTP_CODE); curl_close($s); switch ($status) { case self::HTTP_OK: case self::HTTP_CREATED: $out = $_out; break; default: throw new \Exception("http error: {$status}",
$ status); } return $ out; }}
你想实现什么? – yokoloko
这是这样,服务器端API可以反过来调用其他服务器和POST/GET信息给他们。假设有一台提供地理IP查询的服务器(有几个)。您的服务器想要对其访问者进行地理定位。它可以使用curl这个服务器端API发布到地理位置数据库服务器并查找结果。 – arunkumar
是的,肯定你可以做服务器端cURL调用,只需要正确的扩展。 – yokoloko