gpt4 book ai didi

php - Laravel 记住我 cookie 未设置

转载 作者:行者123 更新时间:2023-12-02 04:33:57 33 4
gpt4 key购买 nike

我最近使用 Laravel 构建了我的第一个 Web 应用程序,总的来说,它非常棒。除了这一问题之外,我很容易就掌握了该框架。我正在尝试使用框架的内置身份验证。我可以根据给定的请求登录我的用户,但我正在尝试通过 Auth::attempt() 实现“记住我”功能方法按照文档传入 true 作为第二个参数。 Laravel Documentation

我已经尝试这个方法好几个小时了,但没有任何运气。我在这个 url ( https://www.youtube.com/watch?v=hYUf6u_txhk#aid=P-a-d6RlOC8 ) 上看过一个视频,它显示了当应用程序中记住用户时设置了哪个 cookie,而当我尝试记住我的用户时,我的浏览器中没有设置此 cookie。 cookie 没有被设置,我的用户也没有被记住。这是我的代码。

if (Auth::attempt(array('email' => Input::get('email'), 'password' => Input::get('password')), true))
{
$userid = DB::table('users')->where('email', '=', $userdata['email'])->pluck('id');

Auth::login(Auth::user());

if (Auth::check())
{
echo "LOGGGEED IN WOOOOOOO";
}
else {
echo "user not logged in";
}

return Redirect::to('/dashboard/' . $userid);
}

在重定向发生之前,这是我看到的页面 enter image description here

这是处理重定向的 Controller 。

class DashboardController extends BaseController
{
public function showDashboard($userid)
{
if (Auth::viaRemember())
{
echo "WOOOOOOOOOOOOOOOO";

}
else {
echo 'booooooo';
}
if (Auth::check())
{
echo 'YAY LOGGED IN';
}
else {
echo 'BOO AGAIN';
}
$user = User::where('id', '=', $userid)->first();
$subscriptions = $user->subscriptions;
$orders = $user->orders;

return View::make('dashboard', compact('user', 'subscriptions', 'orders'));
}
}

但是当重定向发生并且/dashboard/{userid} 加载时,您可以在左上角看到我的 echo语句显示用户没有被记住!
enter image description here

此时我非常沮丧,因为这是我完成应用程序所需的最后一步,而且我很尴尬 Laravel 文档说“Laravel 旨在使实现变得简单”。除了这部分之外,我的应用程序的其余部分都可以正常工作,因此我将不胜感激有关此问题的任何和所有帮助!如果您需要更多信息,请随时询问我。 Dashboard page

最佳答案

解决方案:

在数组中的 app/config/session.php 中,我的“driver”键的值为“file”。将其切换为“cookie”后,一切都按预期工作。

关于php - Laravel 记住我 cookie 未设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22419681/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com