2012-08-14 46 views
0

我正在嘗試構建一個應用程序,用戶可以在該應用程序中指定網站的URL,並且我的網頁將轉到該URL並獲取信息。如果URL需要用戶身份驗證來訪問信息,那麼我希望使用OAuth 1.0來做到這一點。通用OAuth - 有可能嗎?

的問題是,我看到這個skimped了在OAuth的教程,只要我可以告訴我的應用程序已,不知何故,與我請求從信息頁面註冊。我的理解是,對於我希望我的用戶能夠使用的任何頁面,我必須自己單獨訪問該頁面並註冊我的應用程序。完成之後,它將爲我提供消費者密鑰和祕密,以便將其硬編碼到我的頁面中,然後在訪問請求URL,授權URL和訪問URL時使用這些密鑰和祕密。當然,這對我來說並不合適,因爲我希望我的用戶能夠指定任意頁面來訪問信息,然後將這些信息提供給這些頁面,以便讓我的應用訪問其中的信息。

另外,從我所知道的,有三個URL,我需要知道:

  • 請求的URL,這是我送我的消費鍵/隱匿對,以便接收新的,未經授權的請求令牌。
  • 授權URL,我將用戶引導到具有查詢參數的請求令牌和oauth_callback。用戶將被重定向到我的網頁外,登錄到外國站點,授予我訪問權限,然後重定向到oauth_callback中指定的URL,並提供有關他們是否授權我的請求的信息。
  • 的訪問網址,這是我送授權的請求令牌,預期回報來獲得訪問令牌。

然後,一旦我擁有了所有這些,我可以使用訪問密鑰/祕密對作爲用戶名和密碼。我將它們存儲在與用戶相關的cookie中,並且在我訪問網站信息時使用它們。在網站的交易結束時,它會在我的請求中查找這些信息,如果我將它正確包含,那麼我將被允許訪問我請求的任何用戶數據。

正在嘗試做什麼 - 爲網站提供通用的OAuth訪問權限 - 可能,還是需要我作爲應用程序所有者向服務器註冊我的應用程序以便OAuth訪問它?如果有可能,那麼我如何獲得請求URL,授權URL和訪問URL?

+0

只要你解決的OAuth,何樂而不爲2.0嗎?此外,你需要問*一個*清晰,簡潔的問題。這是一組問題。 – Madbreaks 2012-08-14 21:23:15

+0

我編輯這個試圖問一個明確的問題,但我想我真的問兩個。不過,它們是非常密切相關的。至於1.0與2.0,閱讀大約2.0並沒有給我留下好印象。 – 2012-08-14 21:33:33

回答

1

這不是真的有可能。以下是您遇到的問題的簡短列表:

  1. 您需要爲所有網站安裝應用程序令牌(例如您的應用程序在資源所有者處註冊)。這是不是你可以在飛行中從不同的資源擁有者
  2. 不一致的OAuth網址架構。 Twitter有不同於Foursquare的谷歌不同的OAuth網址結構。如果沒有對其進行硬編碼,找到這些網址是不太可能的。
  3. 範圍。當您爲許多資源所有者進行OAuth註冊時,您需要指定一個範圍。你將如何知道的範圍應該是