當我在post提交的數據增加一段內容後會報錯:417 - Expectation Failed
。
查資料發現在使用curl做POST時,當post的數據大於1024字節時,curl並不會直接發起post請求,而是分爲兩步,
-
1.發送一個請求,包含一個Exc:100-continue,詢問Server接收數據
-
2.接收到Server返回100-continue應答後,才把post提交給Server
RFC相關資料:https://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.2.3
然而我的路由器使用的是
解決辦法是增加這個選項:curl_setopt($curl, CURLOPT_HTTPHEADER, ['Expect:']);