PHP使用CURL请求设置header、OAuth、field等信息
- 4337
- PHP
- 36
- super_dodo
- 2016/11/17
首先请确保你的环境开启配置了正确的curl组建。下面只是做抛砖引玉。
public function httpCurl(){
$url = 'https://api.twitter.com/oauth/request_token'; //请求的地址
$url_callback = 'http://www.dodobook.net/call-back'; //回调地址
$postData = ['user_id'=>'100','user_name'=>'james']; //传递的参数
$fieldData = (is_array($postData)) ? http_build_query($postData) : $postData;
$access_token = '2**************Ce';
$oauth_nonce = md5(time()); //随机数
$oauth_signature = 'todo_by_yourself'; //签名--请按照规则--加密方式进行生成
// $url = 'https://www.googleapis.com/oauth2/v4/token';
$curlHeaders = [
'Host: api.twitter.com',
"User-Agent: themattharris' HTTP Client",
"Host: api.twitter.com",
"Accept: */*",
'Authorization: OAuth oauth_callback="'.$url_callback.'"',
'oauth_consumer_key="'.$access_token.'"',
'oauth_nonce="'.$oauth_nonce.'"',
'oauth_signature="'.$oauth_signature.'"',
'oauth_signature_method="HMAC-SHA1"',
'oauth_timestamp="'.time().'"',
'oauth_version="1.0"'
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 30); //超时时间
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
// curl_setopt($curl, CURLOPT_SSLVERSION, 3);
curl_setopt($curl, CURLOPT_HTTPHEADER, $curlHeaders);
curl_setopt($curl, CURLOPT_POSTFIELDS, $fieldData);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl); //得到执行返回的值
echo curl_strerror(curl_errno($curl)); //输出错误信息
$responseCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); //返回提示码
curl_close($curl); //关闭CURL
echo '<pre>';
print_r($responseCode);
echo '<hr>';
print_r($response);
exit();
}
此方法有待验证,也依赖于你的环境和相关的接口等。也欢迎各位提出指示信息。
每个人都会有一段异常艰难的时光,挺过去,人生豁然开朗,挺不过去,时间会教你与困难握手言和,不必害怕。
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例

