matlab 正在等待响应标头。可能服务器没有响应,或者 weboptions.Timeout,Expect:100-continue
通過matlab進行webwrite測試,結果發現返回報錯
原因是 "正在等待響應標頭"。可能服務器沒有響應,或者 weboptions.Timeout
解法:
1、修改timeout,增大等待返回時間
2、如果是Expect:100-continue,修改Expect為空,
Expect:100-continue的解釋:
在使用curl做POST的時候, 當要POST的數據大于1024字節的時候, curl并不會直接就發起POST請求, 而是會分為倆步,
1. 發送一個請求, 包含一個Expect:100-continue, 詢問Server使用愿意接受數據?
2. 接收到Server返回的100-continue應答以后, 才把數據POST給Server
這是libcurl的行為.
具體的RFC相關描述:?http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.2.3
于是,這樣就有了一個問題, 并不是所有的Server都會正確應答100-continue, 比如lighttpd, 就會返回417 "Expectation Failed", 則會造成邏輯出錯,,
要解決的辦法也挺容易:
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
// Disable Expect: header (lighttpd does not support it)
PS:有定制開發、答疑需求,可以QQ聯系:1762016542
總結
以上是生活随笔為你收集整理的matlab 正在等待响应标头。可能服务器没有响应,或者 weboptions.Timeout,Expect:100-continue的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode 刷题 119. 杨辉三
- 下一篇: leetcode 刷题 3. 无重复字符