文件沒有說明為第三個參數傳遞字串和傳遞陣列之間的區別。我們花了兩天時間除錯,最後閱讀了 C 原始碼才發現兩者之間存在著顯著且未記載的差異。
「a=1」和 array("a" => 1) 的處理方式非常不同!
如果您正在發出 POST/PUT 請求(或任何具有實體主體的請求),則應將其作為字串傳遞。
如果您正在發出帶有查詢字串的請求,則應將其作為關聯式陣列傳遞。
如果您傳遞「a=1」意圖指定查詢字串,則產生的簽章將無效 -- 它會將其處理為如同您正在發佈內容「a=1」。
(沒有版本資訊,可能只存在於 Git 中)
OAuth::getRequestHeader — 產生 OAuth 標頭字串簽章
根據最終的 HTTP 方法、URL 和字串/陣列參數產生 OAuth 標頭字串簽章
http_method
請求的 HTTP 方法。
url
請求的 URL。
extra_parameters
額外參數的字串或陣列。
包含已產生請求標頭的字串,或失敗時傳回 false
文件沒有說明為第三個參數傳遞字串和傳遞陣列之間的區別。我們花了兩天時間除錯,最後閱讀了 C 原始碼才發現兩者之間存在著顯著且未記載的差異。
「a=1」和 array("a" => 1) 的處理方式非常不同!
如果您正在發出 POST/PUT 請求(或任何具有實體主體的請求),則應將其作為字串傳遞。
如果您正在發出帶有查詢字串的請求,則應將其作為關聯式陣列傳遞。
如果您傳遞「a=1」意圖指定查詢字串,則產生的簽章將無效 -- 它會將其處理為如同您正在發佈內容「a=1」。