Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel和JWT测试与postman应用程序的集成_Laravel_Laravel 5_Jwt - Fatal编程技术网

Laravel和JWT测试与postman应用程序的集成

Laravel和JWT测试与postman应用程序的集成,laravel,laravel-5,jwt,Laravel,Laravel 5,Jwt,JWT在Laravel 5中对我不起作用,我有三天的时间,但我不知道为什么几乎什么都不起作用 我正在测试邮递员的申请 如果这样做很好: 用户注册方法 public function store() { $credentials = $this->request->only('name','email', 'password'); $credentials['password'] = Hash::make($credentials['password']); try { $use

JWT在Laravel 5中对我不起作用,我有三天的时间,但我不知道为什么几乎什么都不起作用

我正在测试邮递员的申请

如果这样做很好:

用户注册方法

public function store()
{
$credentials = $this->request->only('name','email', 'password');
$credentials['password'] = Hash::make($credentials['password']);

try {
  $user = User::create($credentials);
} catch (Exception $e) {
  return response()->json([
    'error' => 'User already exists.'
    ],HttpResponse::HTTP_CONFLICT
  );
}
$token = JWTAuth::fromUser($user);
return response()->json(compact('token'));
}
这也很好:

登录

但是JWT中间件,没有任何东西限制和允许下一个请求

Route::get('/prueba-jwt-auth-restringido', [
'before' => 'jwt-auth',
function () {
  return 'Hola JWT :)';
}
]);
通过邮递员测试,发送令牌,下一个vardump始终返回false:

Route::get('/prueba-jwt-auth-restringido', [
'before' => 'jwt-auth',
function () {
  $token = JWTAuth::getToken();
  //$user = JWTAuth::toUser($token);    
  var_dump($token); // False 
}
]);
这里是邮递员请求截图的dropbox中的图像:

有关详细信息,我的内核文件是中间件的一部分:

    protected $middleware = [
    'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
    'Illuminate\Cookie\Middleware\EncryptCookies',
    'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
    'Illuminate\Session\Middleware\StartSession',
    'Illuminate\View\Middleware\ShareErrorsFromSession',
// 'gimnasio\Http\Middleware\VerifyCsrfToken', 
// 'gimnasio\Http\Middleware\Cors',
// 'Barryvdh\Cors\Middleware\HandleCors',
];
我省略了CORS,因为我不允许我的请求不起作用,包括:

  $response = $next($request);
  $response->headers->set('Access-Control-Allow-Origin' , '*');
  $response->headers->set('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT, DELETE');
  $response->headers->set('Access-Control-Allow-Headers', 'Content-Type, Accept, Authorization, X-Requested-With');
  return $response;
请原谅我的英语,我感谢你的帮助。我已经解决了这个问题


在邮递员请求中,我更改了授权令牌,但两者都不起作用。似乎:.htaccess修改,但如果我将其上载到共享服务器上。希望我不会有问题
  $response = $next($request);
  $response->headers->set('Access-Control-Allow-Origin' , '*');
  $response->headers->set('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT, DELETE');
  $response->headers->set('Access-Control-Allow-Headers', 'Content-Type, Accept, Authorization, X-Requested-With');
  return $response;