2017-02-07 142 views
0

如何在python中使用請求庫發出此請求。在python中使用HTTP授權標頭

curl -H "Authorization: 563492ad6f91700001000001e4d5ce6a4c3986a01" "http://api.pexels.com/v1/search?query=people" 

我試過使用這段代碼,但是由於某種原因它沒有工作。

from requests.auth import HTTPBasicAuth 
requests.get('http://api.pexels.com/v1/search?query=sea&per_page=15&page=1', auth=HTTPBasicAuth('Authorization' : '563492ad6f91700001000001e4d5ce6a4c3986a01')) 
+0

是那頭文件確實正確?這看起來像是違反了RFC [7235](https://tools.ietf.org/html/rfc7235)和[7236](https://tools.ietf.org/html/rfc7236)。無論如何,你試圖在那裏做什麼顯然不是「基本」認證。 – DaSourcerer

+0

@DaSourcerer我正在嘗試使用這個api https://www.pexels.com/api/究竟我做錯了什麼。 –

+1

也許沒什麼。那些設計該API的人不符合相關的RFC:'Authorization'標頭需要一個標識[認證方案]的標記(http://www.iana.org/assignments/http-authschemes/http-authschemes.xhtml) 。在那裏扔一個令牌不合格。 – DaSourcerer

回答

1

我覺得AUTH這個要求只是一個適當的數據頭,所以我會嘗試這樣的:

requests.get("http://api.pexels.com/v1/search?query=people", headers={ 
    "Authorization": "563492ad6f91700001000001e4d5ce6a4c3986a01" 
}) 

這正好對應於與-H標誌捲曲請求