会话在后端工作正常,但是当我使用前端发送请求时它不起作用
在控制器中:
public function captcha(){
session_start();
if (isset($_SESSION['captcha_image'])) {
File::delete($_SESSION['captcha_image']);
$temp = new Captcha();
$temp->captcha();
return response()->json(['url_image' => $_SESSION['captcha_image'],
'captcha' => $_SESSION['captcha']], Response::HTTP_OK);
} else {
$temp = new Captcha();
$temp->captcha();
return response()->json(['url_image' => $_SESSION['captcha_image'],
'captcha' => $_SESSION['captcha']], Response::HTTP_OK);
}
}
创建会话 :
$_SESSION['captcha'] = $word;
$_SESSION['captcha_image'] = "image".$time.".png";
您可以使用Laravel会话:
通过
Request
实例:use IlluminateHttpRequest; public function captcha(Request $request) { if ($request->session()->has('captcha_image')) { File::delete($request->session()->get('captcha_image')); } $temp = new Captcha(); $temp->captcha(); return response()->json([ 'url_image' => $request->session()->get('captcha_image'), 'captcha' => $request->session()->get('captcha'), ], Response::HTTP_OK); }
通过全局
session
帮助程序方法:public function captcha() { if (session('captcha_image')) { File::delete(session('captcha_image')); } $temp = new Captcha(); $temp->captcha(); return response()->json([ 'url_image' => session('captcha_image'), 'captcha' => session('captcha'), ], Response::HTTP_OK); }
要在会话中存储数据:
// Via a request instance...
$request->session()->put('key', 'value');
// Via the global helper...
session(['key' => 'value']);
有关更多信息,请参阅 Laravel文档。