我试图通过PHP形成以下CURL post请求?我怎么做到的,所有我尝试返回作为无效的post参数。
这就是我试图通过php POST(我有API_KEY, api_sig..)但不知道如何把下面的post查询通过PHP):
curl - d"api_key = KEY&团体= SIGNATURE& time_stamp = 20, json = 1"'http://api.i.com/v1/update/
应该可以了
$url = "http://api.iq.com/v1/update/";
$data = "api_key=API_KEY&api_sig=SIGNATURE&time_stamp=20090612111832&json=1";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST ,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); /* obey redirects */
curl_setopt($ch, CURLOPT_HEADER, 0); /* No HTTP headers */
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); /* return the data */
$result = curl_exec($ch);
curl_close($ch);
将所有内容放在一行中:
curl -d "api_key=API_KEY&api_sig=SIGNATURE&time_stamp=20090612111832&json=1" http://api.iq.com/v1/update/
使用exec()
运行,例如
exec("curl -d '"api_key=API_KEY&api_sig=SIGNATURE&time_stamp=20090612111832&json=1'" http://api.iq.com/v1/update/", $results);
$results
保存返回的数据
请参考以下PHP代码
define('POSTURL', 'http://api.iq.com/v1/update/');
define('POSTVARS', 'api_key=API_KEY&api_sig=SIGNATURE&time_stamp=20090612111832&json=1'); //removed typo
$ch = curl_init(POSTURL);
curl_setopt($ch, CURLOPT_POST ,1);
curl_setopt($ch, CURLOPT_POSTFIELDS ,POSTVARS);
curl_setopt($ch, CURLOPT_RETURNTRANSFER ,1); // RETURN THE CONTENTS OF THE CALL`
$Rec_Data = curl_exec($ch);`
curl_close($ch);