2013-04-29 149 views
5

我正在嘗試開發桌面應用程序以訪問由Groundspeak爲geocaching.com公開的API。 API需要使用OAuth。嘗試獲取OAuth請求令牌時出現「讀取消息時出錯」

終於搞清楚爲什麼我的郵件簽名被拒絕(我必須對我的回調URL進行雙重編碼,在閱讀雙重編碼導致問題的地方之後),我現在從Groundspeak收到以下錯誤,試圖獲得請求令牌:

oauth_error_message=Error%20while%20reading%20message%20%27DotNetOpenAuth.OAuth.Messages.UnauthorizedTokenRequest%27%20parameter%20%27oauth_callback%27%20with%20value%20%27http%253A%252F%252Fwww.mysite.com%252F%27. 

不是一個非常具有描述性的錯誤消息。這裏有什麼問題? Groundspeak在其服務器上使用DotNetOpenAuth。看起來像我的回調網址可能會導致一些問題,但我不知道什麼。

我也許應該說我正在開發一個桌面應用程序,所以回調URL並不真正有效。它確實指向我擁有的網站,但該網站完全不知道OAuth。如果我省略回叫網址,則會收到錯誤「回叫網址不存在或無效」或其他。

回答

1

我對Groundspeak一無所知,但我猜他們需要在使用OAuth之前註冊您的應用的回調URL。至少谷歌和微軟用他們的OAuth API來做到這一點。在Groundspeak上尋找某種開發者設置。

+0

我在論壇上詢問過這個問題,但還沒有看到答案。我也找不到像開發人員選項那樣的東西。在其他文章中,我從來沒有見過關於註冊回調URL的任何信息。不幸的是,如果不能確認這一點,我不能接受它......我會如果/當我可以,但:) – Steve 2013-05-09 12:32:04

0

這絕對是未來需要進一步定義的東西:適用於非web應用程序的OAuth。但似乎有一些可能的解決方案(不是最乾淨的),您可以嘗試使OAuth在桌面應用程序中工作。你可以看看下面有一些工作解決方案的文章(我沒有自己測試過)。它是基於關閉谷歌的可行的解決方案,用於從安裝的桌面應用程序處理的OAuth:

https://developers.google.com/accounts/docs/OAuthForInstalledApps

鏈接到可能的解決方法解決方案:

http://blog.appharbor.com/2012/06/21/oauth-for-net-desktop-applications

這裏也就是用於桌面應用程序的OAuth上SO相關文章:OAuth for Desktop apps?

希望這會有所幫助!

相關問題