[英]OAuth issue with the Yahoo BOSS API
我正在嘗試使用一些查詢字符串來調用Yahoo BOSS API,如此處所述 。 除非查詢中沒有空格,否則一切工作正常。 我正在使用URLEncoder.encode(q, "UTF-8")
對查詢字符串進行編碼。
但是,只要查詢字符串中有空格,請求就會失敗,並顯示“ Please provide valid credentials. OAuth oauth_problem="signature_invalid"
Please provide valid credentials. OAuth oauth_problem="signature_invalid"
錯誤。 由於查詢字符串是經過編碼的,因此應該對空格進行轉義,其他人之前是否曾遇到並解決過此問題?
您需要從yahoo的授權人員那里獲取憑據,即“客戶密鑰”和“客戶機密”。 一旦獲得,您可以替換代碼中的代碼,然后將被授權。
我有同樣的問題。 您需要使用:
UrlEncoder.encode(q,"UTF-8").replace("+","%20")
您的版本破壞了您的簽名,因為Oauth使用百分比編碼來簽署請求。 因此,您需要%20
。 可以在這里找到有關該主題的好文章。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.