2013-05-13 17 views
6

我想使用Python的requests-oauth庫向Pocket發出請求。不幸的是,使用這個庫的描述不是很全面,我也是使用oauth2的新手。一般來說,我理解它背後的過程,但仍然無法將其轉換爲獲得工作請求。教程使用requests_oauth2

我在尋找的是文件或一些使用requests-oauth2的綜合示例。有人知道嗎。

尤其是我不明白什麼redirect_url使用時,請求是由我的本地機器上的腳本,而不是一個Web應用程序。

回答

4

的,我能找到的最佳信息來源是文檔(當然的源代碼)的要求-的oauth2項目在Github上:

該文件還包含一個「有趣的閱讀」部分以及一些指向其他教程的鏈接。對於的OAuth2流程的一般概述,看看這個教程:

當然也有「老派」中的python-的oauth2庫,這是相當不錯-documented:

模塊的文檔中含有n爲Twitter API三腳認證的例子。

關於REDIRECT_URL領域:在一般情況下,你可以使用你想在這裏的任何URL(甚至本地地址如http://localhost/my/endpoint),基於OAuth的認證服務器將只是驗證了他之後發出HTTP 303重定向請求到客戶端,然後在客戶端進行處理。但是,某些API服務(如Twitter)會要求您事先指定redict_url,並拒絕某些URL(例如基於IP的URL)。

+4

該[[python-oauth2](https://github.com/joestump/python-oauth2)自述文件中的第一行是「該庫實現了OAuth 1.0和**而非OAuth 2.0 **」。太好笑了。 – RayLuo 2016-08-31 21:45:45

1

如果您是Python庫的請求粉絲,我推薦使用requests-oauthlib。它有great documentation和活躍的開發者。

通常情況下,您在API提供商網站上的應用程序設置中設置了redirect_url。它看起來像Pocket只支持基於瀏覽器的身份驗證,所以您需要一個Web瀏覽器來生成訪問令牌,然後您可以將其嵌入到腳本中。