1. 程式人生 > >PHP通過curl向其它伺服器發請求

PHP通過curl向其它伺服器發請求

在很多時候,我們都需要請求第三方的伺服器來獲取一些資料,比如token

那麼我們的php如何實現向第三方伺服器發請求呢?我們可以通過curl來實現

首先定義請求的url,如:

$url="https://api.cn.ronghub.com/user/getToken.json";
然後建立httpHeader的頭:
$httpHeader=createHttpHeader();
定義通過post方式傳送請求的引數:
$curlPost="userId=".$userId."&name=".$nickName."&portraitUri=".$headImg;
初始化curl:
$ch=curl_init
();
傳送請求:
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HTTPHEADER,$httpHeader);
curl_setopt($ch,CURLOPT_HEADER,false);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);
curl_setopt($ch,CURLOPT_TIMEOUT,30);
curl_setopt
($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,false); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
接收返回的資料:
$data=curl_exec($ch);
關閉curl:
curl_close($ch);
這樣就通過curl完成了一次post請求,並獲取到了返回的資料。

完整程式碼如下:

$url="https://api.cn.ronghub.com/user/getToken.json";
$httpHeader=createHttpHeader();
$curlPost="userId=".$userId."&name="
.$nickName."&portraitUri=".$headImg; $ch=curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_HTTPHEADER,$httpHeader); curl_setopt($ch,CURLOPT_HEADER,false); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch,CURLOPT_POST,1); curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost); curl_setopt($ch,CURLOPT_TIMEOUT,30); curl_setopt($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,false); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); $data=curl_exec($ch); curl_close($ch);

相關推薦

PHP通過curl其它伺服器請求並返回資料

在很多時候,我們都需要請求第三方的伺服器來獲取一些資料,比如token,比如百度的主動推送,那麼我們的php如何實現向第三方伺服器發請求呢?我們可以通過curl來實現 首先定義請求的url,然後建立httpHeader的頭,定義通過post方式傳送請求的引數:   初始化curl:

PHP通過curl其它伺服器請求

在很多時候,我們都需要請求第三方的伺服器來獲取一些資料,比如token 那麼我們的php如何實現向第三方伺服器發請求呢?我們可以通過curl來實現 首先定義請求的url,如: $url="https://api.cn.ronghub.com/user/getToken.j

PHP通過curl其它服務器請求並返回數據

false 其它 blank post data 方式 初始化 color 完成 在很多時候,我們都需要請求第三方的服務器來獲取一些數據,比如token,比如百度的主動推送,那麽我們的php如何實現向第三方服務器發請求呢?我們可以通過curl來實現 首先定義請求的url,然

php通過curl請求介面的各種設定

第一:請求頭部方式 為json ,獲取狀態碼 function send_http_json($url,$data) { $ch = curl_init($url); $this_header[] = "content-type:application/js

php通過curl擴展進行模擬登錄(含驗證碼)

程序 valid 做的 .cn ica ews fclose har user 以下為本人工作中遇到的需要做的事情,之前也沒怎麽用過curl,查了好多資料,才稍微弄明白一點;本文所有內容只是自己平日工作的記錄,僅供大家參考:<?php/*** 模擬登錄*/head

php 用戶微信送信息

mps dex can openid don label 記錄 b- 用戶信息 1:制作微信菜單欄 <?phpheader("Content-type: text/html; charset=utf-8");function request_post($url = ‘

php使用cUrl方法 get、post請求

http log lds ray lan init foreach get方法 spa php使用curl方法,請確保已經開啟curl擴展。傳送門:http://www.cnblogs.com/wgq123/p/7450667.html /**Curl請求get方法 *@

php 通過curl獲取遠程數據,返回的是一個數組型的字符串,高手幫忙如何將這個數組類型的字符串變成數組。

bsp 選項 con 獲取 pan 如果 clas exe transfer 如 Array([0] => Array([0] => Array([kd_status] => 已簽收[kd_time] => 2014-04-30 18:59:43 [

php封裝curl,模擬POST和GET請求HTTPS請求

<?php /** * @title 封裝代理請求 * @author victor **/ class ApiRequest { /** * curl提交資料 * @param String $url 請求的地址 * @param Array $header 自定

php 通過curl header傳值

下面是自己整理的通過curl  header傳值 方式是post $url = 'http://www.***.com';//此處為傳值需要訪問的地址 $header = array('token:JxRaZezavm3HXM3d9pWnYiqqQC1SJbs

【QT】QT的學習:在QML中使用AJAX伺服器傳送請求獲取資料

(1)準備Ajax.js // GET function get(url, success, failure) { var xhr = new XMLHttpRequest; xhr.open("GET", url); xhr.onreadyst

PHP使用CURLPython,Golang傳送檔案表單上傳檔案[HTTP協議下Api]

PHP傳送方程式碼段: <?php /** * htppCurl表單上傳檔案 * @param $file FILE_ADDR * @param string $url uri * @param string $key key * @return bool|mixed *

php實現非同步方法之一(php對於curl或瀏覽器或ajax請求立即返回結果,返回結果後的php程式碼還能繼續執行)

如題:  服務端php程式碼如下:(瀏覽器和curl的請求都可以使用) //要輸出到瀏覽器的內容, nginx伺服器快取內容需要大於65536才能輸出 $str = str_repeat(' ', 65536); //告訴瀏覽器資料長度,瀏覽器接收到此長度資料後就不再接收資

phpcurl獲取https加密協議請求返回json資料進行資訊獲取

歡迎加入php架構師之旅 群:410028331(招納賢人-大師中)方便技術的交流 <?php header("Content-type:text/html; charset=utf-8");

PHP通過curl獲取介面URL的資料

<?php  $weather = curl_init();              curl_setopt($weather,CURLOPT_URL,"https://api.pc2801.

php 通過curl上傳圖片

PHP < 5.5:使用 目前使用的php版本 7.1 測試無法使用 前面加@ 的方法上傳檔案 ,查詢資料 使用 curl_setopt($ch,CURLOPT_SAFE_UPLOAD,FALSE) 可以解決,但是經測試 這種方式不行,顯示的CURLOPT_SAFE_UPLOAD這個選項在該版本php中

opensslSSL伺服器傳送請求

列印所有server端發過來的請求 openssl s_client-connect corp.zhc.com:4443 將客戶端傳送的內容也顯示出來。 openssl s_client-conne

PHP通過cURL訪問https時出現SSL certificate problem: unable to get local issuer certificate的解決方法

PHP通過cURL訪問https時出現SSL certificate problem: unable to get local issuer certificate的解決方法:只要設定以下兩個屬性就可以解決。 將 CURLOPT_SSL_VERIFYPEER 設定為 fal

一個常用的通過curl送HTTP請求的函數

請求方式 multi return ini als 參數 一個 pic def function: function curl_get($url, $params) { return curl_http($url, $params, ‘GET‘); } func

Multipart/form-data POST檔案上傳詳解 理論 簡單的HTTP POST 大家通過HTTP伺服器傳送POST請求提交資料,都是通過form表單提交的,程式碼如下:

Multipart/form-data POST檔案上傳詳解 理論 簡單的HTTP POST 大家通過HTTP向伺服器傳送POST請求提交資料,都是通過form表單提交的,程式碼如下: <form method="post"action="http://w.soh