PHP使用CURL请求设置header、OAuth、field等信息
- 4081
- 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的使用示例