我正在使用ADmad的CakePHP JWT Auth plugin和Bravo Kernel's tutorial来设计这个CakePHP 3应用程序。
我已经按照示例操作,并且能够通过调用token()方法生成令牌。
但是,当我使用标题中包含的授权承载xxx形式的令牌发回请求时,CakePHP无法读取它。
如果我记录$ request var,我看到......
maxfilesize
...
...
[_environment:protected] => Array
(
[REDIRECT_REDIRECT_HTTP_AUTHORIZATION] => Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJkZTUyYTIxZC02Nzk1LTRlZTgtYjFhYi1mYmY1N2M4OTQxNDAiLCJleHAiOjE1MTAzMDQxNTZ9.GeO-UACG491JsACeWqXYGasISBTRc7g74wVQjde-gYY
[REDIRECT_REDIRECT_MIBDIRS] => D:/xampp7/php/extras/mibs
[REDIRECT_REDIRECT_MYSQL_HOME] => \xampp\mysql\bin
[REDIRECT_REDIRECT_OPENSSL_CONF] => D:/xampp7/apache/bin/openssl.cnf
[REDIRECT_REDIRECT_PHP_PEAR_SYSCONF_DIR] => \xampp\php
根据Bravo Kernel的教程/ ADmad的解释,我在.htaccess中添加了以下几行,以确保Apache传递令牌。
[REQUEST_URI] => /api/requesters/load-user-details.json
[SCRIPT_NAME] => /api/webroot/index.php
[PHP_SELF] => /api/webroot/index.php
[REQUEST_TIME_FLOAT] => 1509704194.57
[REQUEST_TIME] => 1509704194
[HTTP_AUTHORIZATION] => Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJkZTUyYTIxZC02Nzk1LTRlZTgtYjFhYi1mYmY1N2M4OTQxNDAiLCJleHAiOjE1MTAzMDQxNTZ9.GeO-UACG491JsACeWqXYGasISBTRc7g74wVQjde-gYY
[ORIGINAL_REQUEST_METHOD] => GET
[HTTP_X_REQUESTED_WITH] =>
令牌似乎包含在标题中..但插件仍然保持输出..
RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
关于下一步该做什么的任何线索?
谢谢。