我正在对我的Laravel控制器进行简单验证:
public function updateInfo(Request $request) {
$validator = $request->validate([
"name" => ["string", "nullable"],
"email" => ["email", "nullable"],
"currentPassword" => ["password:api"]
]);
return json_encode($validator);
}
我的问题是,如果失败,这个验证会将我重定向到主,我通过AJAX发出请求,我知道Laravel会检测到通过Ajax发出的请求,但它只有在正常请求(我发送的典型请求标题与内容类型应用程序/json和正文中我发送了一个正常的JSON
但是Laravel无法检测到当te Ajax请求不是内容类型应用程序/json
时,我使用的是JavaScript的FormData()
对象,因此,我没有发送标题内容类型应用程序/json
,而是在正文中发送了FormData对象。
我认为这是模拟一个典型的HTTP请求重新加载页面,因此Laravel无法检测到它,但它给我的ajax响应带来了麻烦,因为Laravel响应重定向,在我的Ajax响应中,我捕获了超文本标记语言代码主页。
我能做什么?
您可以将validator()
helper函数与validate()
方法结合使用。它将帮助您处理AJAX调用和正常调用
validator($request->all(), [
"name" => ["string", "nullable"],
"email" => ["email", "nullable"],
"currentPassword" => ["password:api"]
])->validate();
是否可以将用户重定向到Laravel中的POST路由。我有两张表格。表格一发送到包含表格二的路线,表格二发送到最终路线,然后进行验证。如果
我想重定向用户回到他们在Laravel 5成功登录后登录页面之前查看的页面。目前,如果用户写了一个错误的用户名/密码,他会被重定向到登录页面,显示错误,我想保持这种方式。另外,我希望当用户点击页面上的登录按钮时,以及当用户被自动重定向到登录页面时,此功能能够正常工作。 在我看来 是这里的关键,但我不知道如何让它“重定向到不是登录页的最后一页”。感谢您的帮助。
遵循这个指南:https://www.youtube.com/watch?v=bqkt6eSsRZs 添加了从laravel docs的auth路由 创建登录/注册视图 创建 /home路线 自定义AuthController: 尝试访问身份验证/登录时,我遇到以下错误: 请求中出现错误异常。php第775行:。。未根据请求设置会话存储。 已将身份验证路由移动到中间件组。 成功注册,在数据库和会话
我所有的主要组件都有如下部分: 有了这个,我正在检查是否有用户登录。如果这是假的,则用户将被重定向到登录路由。由于这个部分用于许多组件,我在想如果我可以优化这个得到一个DRY代码... 使现代化 我正在使用反应路由器:
我正在laravel中创建一个多身份验证系统,其中有两种类型的用户:管理员(由我创建)和用户(使用本地laravel身份验证系统)。 如果我以用户身份登录,当我尝试访问登录页面时,当我已经登录,它会将我重定向回仪表板,但如果我以管理员身份登录,当我再次访问管理员登录页面时,它会让我再次登录,尽管已经作为管理员登录。 以下是我的重定向身份验证类代码: 有人能解释一下发生了什么事吗?
我正在创建一个laravel应用程序与自定义多重身份验证。我正在跟随这篇文章进行多重身份验证。https://pusher.com/tutorials/multiple-authentication-guards-laravel 我已经创建了登录和注册控制器定义的警卫和提供者,一切正常,我能够注册用户并登录他们。我写了一页(http://127.0.0.1:8000/admin)只有当管理员登录时