Postman 的授权 header 在 Laravel 中不可见
Authorization header from Postman not visible in Laravel
我正在尝试使用 Postman 测试带有中间件的 Laravel php 应用程序。该应用程序正在使用 Tymon JWT Auth,根据 docs 我应该设置授权 header:
Authorization: Bearer {yourtokenhere}
因此,我已将授权 header 添加到 Postman,如下所示:
但是我从我的应用程序得到的响应是未提供令牌。
这很奇怪,因为:
- 如果我在 Postman 中将相同的标记附加到 url,则标记对
应用程序(状态 200 OK,没有错误提示 token_not_provided)。
- 如果我在 PHPUnit 而不是 Postman 中测试应用程序并提供令牌
在header或url中都可以。
- 在 Fiddler 中调试原始 Postman 请求表明它实际上
具有授权 header,如下所示:
我还尝试从 Postman 中删除另外两个 header,但没有任何改善。所以看起来一切都设置好了,但它不起作用,为什么?
您的服务器是在 Apache 上吗?如果是,以下清单将有所帮助
您应该在 public 文件夹中正确配置 .htaccess
。参考 this
您应该编辑 apache2.conf
文件
sudo vi +164 /etc/apache2/apache2.conf
并更改为
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
- 然后
sudo a2enmod rewrite
- 重启apache
sudo service apache2 restart
这行得通!
我正在尝试使用 Postman 测试带有中间件的 Laravel php 应用程序。该应用程序正在使用 Tymon JWT Auth,根据 docs 我应该设置授权 header:
Authorization: Bearer {yourtokenhere}
因此,我已将授权 header 添加到 Postman,如下所示:
但是我从我的应用程序得到的响应是未提供令牌。
这很奇怪,因为:
- 如果我在 Postman 中将相同的标记附加到 url,则标记对 应用程序(状态 200 OK,没有错误提示 token_not_provided)。
- 如果我在 PHPUnit 而不是 Postman 中测试应用程序并提供令牌 在header或url中都可以。
- 在 Fiddler 中调试原始 Postman 请求表明它实际上 具有授权 header,如下所示:
我还尝试从 Postman 中删除另外两个 header,但没有任何改善。所以看起来一切都设置好了,但它不起作用,为什么?
您的服务器是在 Apache 上吗?如果是,以下清单将有所帮助
您应该在 public 文件夹中正确配置
.htaccess
。参考 this您应该编辑
apache2.conf
文件sudo vi +164 /etc/apache2/apache2.conf
并更改为<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted
- 然后
sudo a2enmod rewrite
- 重启apache
sudo service apache2 restart
- 然后
这行得通!