1. 程式人生 > >PHP CURL POST無法獲取響應內容的問題

PHP CURL POST無法獲取響應內容的問題

現象:

使用PHP的CURL相關函式進行POST,當要POST的引數內容長度超過1024時,將無法獲得response的資料。

即:

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
當 strlen($data) > 1024 時,curl_exec函式將返回空字串。

解決:

增加一個HTTP header

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));

參考資料:

相關推薦

PHP CURL POST無法獲取響應內容的問題

現象: 使用PHP的CURL相關函式進行POST,當要POST的引數內容長度超過1024時,將無法獲得response的資料。 即: curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLO

PHP curl post header

文件流 php 文件 col gis -type 打印 http family 第三方教程推薦:https://www.cnblogs.com/CHEUNGKAMING/p/5717429.html ?? index.php <?php header

PHP CURL POST、GET

@param get php 設置 turn ans out HP inf 1 <?php 2 /** 3 * CURL HTTP.POST訪問 4 * @param $url 5 * @param array $pa

【Java】JSOUP請求JSON 及解決jsoup不能完整獲取響應內容的問題

用JSOUP來請求介面,構造請求頭的時候非常方便。程式碼如下: Document doc = Jsoup .connect(Constant.DATA_URL) .timeout(10000).get(); Element body = doc.body(); JSONObject js

傳送請求獲取響應內容(c#)

C#請求url,獲取響應的指令碼   public string ResultOfApi(string url) { //傳送請求 HttpWebRequest request = null; Http

怎麼解決jsoup不能完整獲取響應內容的問題

當使用jsoup做爬蟲類的應用時,很是方便。 但如果遇到不能完整獲取響應內容時,一般有以下幾個原因。 1. 網路異常,造成讀取不全。這個很少發生,因為jsoup會報告exception 2. 網路超時,此時可以設定 connection.timeout(n) 增加超時時

php curl post請求超過1024位元組解決方法

基礎知識背景: “Expect: 100-continue”的來龍去脈: HTTP/1.1 協議裡設計 100 (Continue) HTTP 狀態碼的的目的是,在客戶端傳送 Request Message 之前,HTTP/1.1 協議允許客戶端先判定伺服器是否願意接受客戶端發來的訊息主體(基於 R

php curl post請求返回400 bad request

php post請求返回400 bad request,程式碼如下: /** * 模擬post進行url請求 * @param string $url * @param array $post

php curl post josn + header

<meta charset="utf8"> <?php ini_set("max_execution_time",1800000); $array = array( '123123'); $i = 0; foreach ($array as $k=>$v){ $i++

通過GET和POST方式獲取頁面內容

網路爬蟲,即Web Spider,是一個很形象的名字。把網際網路比喻成一個蜘蛛網,那麼Spider就是在網上爬來爬去的蜘蛛。 HTTP協議中定義了四個與伺服器進行互動的方法,分別是GET, POST,PUT,DELETE ,實際對應對伺服器內容的“增”刪“改”

php curl post提交資料失敗解決方法

function http_req($http_type, $method, $url, $data) { $ch = curl_init(); if (strstr($http_typ

PHP CURL POST提交

 $_post_url = 'http://XXXXX/XXX'; $post = 'key=12&content_id='.$content_id.'&md5='.$storeStatusArr['insert_md5'].'&url='.$

關於PHP Curl POST 資料丟失的問題

$ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $uri ); curl_setopt ( $ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_HEADER, 0 );

解決PHP CURL POST 傳遞資料過大返回空值問題

問題: 最近用PHP CURL POST請求一個介面的時候,發現返回一個空,列印日誌也是空。問了介面提供方,介面提供方說我們這邊連線到他們的伺服器後,馬上又斷開了,並沒有POST資料過去。最奇怪的是,只有個別資料會這樣子,也就是說同樣的資料結構傳遞,只是傳遞的值不同,有的訪

C# WinFrom(CS)程式呼叫 WEB 站點,獲取響應內容

 http://blog.csdn.net/xxj_jing/article/details/7547154 /// <summary>     /// 呼叫RUL服務地址     /// </summary>     /// <param

【解決】nginx 下$_SERVER['PATH_INFO'] 無法獲取內容

end 支持 解決方案 doc 加載文件 color read inf oca Apache是模塊加載文件的,默認支持$_SERVER[‘PATH_INFO‘] ; 而對於Nginx下, 是不支持PATH INFO的, 也就是它不會默認設置PATH_INFO. 而因為N

php通過登入後的cookie以及使用者代理然後通過curl獲取網頁內容

function curl_get_https($url, $data=array(), $header=array(), $timeout=30){     $ch = curl_init();     curl_setopt($ch, CURLOPT_

PHP無法獲得curl post 提交的json資料

1.編寫專案將資料轉換成json格式的字串,並通過CURL post的形式傳遞給服務端,但是在服務端無法用$_post獲取到資料。  $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, 'http://test.com/

PHP CURL獲取頁面內容輸出例子

使用PHP curl獲取頁面內容或提交資料,有時候希望返回的內容作為變數儲存,而不是直接輸出。這個時候就必需設定curl的CURLOPT_RETURNTRANSFER選項為1或true。1、curl獲取頁面內容, 直接輸出例子:12345678910<?php$url 

PHP curl 封裝 GET及POST方法

apple ram curl lds con pos post方法 init timeout function curl_get($url, array $params = array(), $timeout = 5) { $ch = curl_init();