2015-02-23 83 views
6

我正在使用JWT(https://github.com/tymondesigns/jwt-auth)在我的API中生成會話令牌。智威湯遜:如何在頭部發送授權?

我將所有相關設置作爲作者的文檔。

連接會話後,我使用URL來返回我的類別的數據。當我直接在URL中傳遞令牌時,它可以工作。如下:

http://api.domain.com/categories?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9kZXYuaW1pYXZpcFwvYXBpXC9hdXRoXC9hdXRoZW50aWNhdGUiLCJzdWIiOiIxIiwiaWF0IjoxNDIxODQyMzU4LCJleHAiOjE0MjE5Mjg3NTh9.-nqKoARKc2t1bI2j5KFEP_zRU8KCki_dghKe6dtAedY 

只有我需要傳遞令牌,在我的請求頭上,使用身份驗證。但不起作用。看看我是如何經歷的:

Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9kZXYuaW1pYXZpcFwvYXBpXC9hdXRoXC9hdXRoZW50aWNhdGUiLCJzdWIiOiIxIiwiaWF0IjoxNDIxODQyMzU4LCJleHAiOjE0MjE5Mjg3NTh9.-nqKoARKc2t1bI2j5KFEP_zRU8KCki_dghKe6dtAedY 

什麼可能是錯的?

在JWT文檔中提到了我在上面花費的表單的使用。但不起作用。

回答

4

如果您使用的是Apache,然後將頭很可能不來通過,由於this known issue內的Symfony

您需要將以下內容添加到您的虛擬主機,如果是這樣的話:

RewriteEngine On 
RewriteCond %{HTTP:Authorization} ^(.*) 
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1] 
+0

就是這樣......問題解決了!非常感謝! – Valdinei 2015-02-24 11:04:49

0

請確保您在後端(服務器端)的代碼爲 這是針對PHP的。

header('Access-Control-Allow-Headers: Origin, Content-Type, Accept, Authorization'); 

請注意,在上面的行中,我們允許「授權」標題。一旦你在服務器端代碼中有上面的代碼,那麼你可以在下面的函數中(如果你使用php編碼)獲得數組中的所有頭文件。

getallheaders(); 
+0

確實沒有服務器端的頭文件。根據他的陳述補充說,但它甚至不起作用。但是現在我認爲這是應用程序的一些東西。 – Valdinei 2015-02-24 06:22:11

相關問題