2015-02-23 26 views
6

Tôi đang sử dụng JWT (https://github.com/tymondesigns/jwt-auth) để tạo session tokens trong API của tôi.JWT: Cách gửi ủy quyền trong tiêu đề?

tôi đã thực hiện tất cả các thiết lập liên quan đến làm việc như tài liệu của tác giả.

Sau khi kết nối phiên giao dịch, tôi sử dụng một URL để trả lại dữ liệu của mục của tôi. Khi tôi chuyển mã thông báo trực tiếp trong URL, nó hoạt động. Như sau:

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

Chỉ tôi cần chuyển mã thông báo, trong yêu cầu của tôi trên tiêu đề, sử dụng Vòng bi xác thực. Nhưng không hoạt động. Xem cách tôi trải qua:

Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9kZXYuaW1pYXZpcFwvYXBpXC9hdXRoXC9hdXRoZW50aWNhdGUiLCJzdWIiOiIxIiwiaWF0IjoxNDIxODQyMzU4LCJleHAiOjE0MjE5Mjg3NTh9.-nqKoARKc2t1bI2j5KFEP_zRU8KCki_dghKe6dtAedY 

Điều gì có thể xảy ra?

Trong tài liệu JWT đề cập đến việc sử dụng các hình thức tôi đã dành trên. Nhưng không hoạt động.

Trả lời

4

Nếu bạn đang sử dụng Apache, sau đó các tiêu đề có lẽ không đến qua, do this known issue trong Symfony

Bạn sẽ cần phải thêm dòng sau vào máy chủ ảo của bạn nếu đây là trường hợp:

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

được chỉ là ... vấn đề được giải quyết! cảm ơn nhiều! – Valdinei

0

Hãy chắc chắn rằng bạn có dưới dòng trong backend của bạn (server side) mã này là dành cho PHP.

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

Lưu ý rằng với dòng trên chúng tôi cho phép tiêu đề "Ủy quyền".

Một khi bạn đã ở trên dòng trong mã phía máy chủ của bạn, sau đó bạn có thể bạn dưới đây chức năng (nếu bạn đang mã hóa trong php) để có được tất cả các tiêu đề trong mảng.

getallheaders(); 
+0

Thực sự không có tiêu đề phía máy chủ. Thêm vào theo tuyên bố của mình, nhưng nó thậm chí không hoạt động. Nhưng tôi nghĩ bây giờ nó là cái gì đó với ứng dụng. – Valdinei

Các vấn đề liên quan