小编Den*_*vic的帖子

验证登录时的Laravel超时

Laravel 5.3 - 我的目标是通过ajax将登录表单发送到登录控制器(AuthenticatesUsers trait),并获得响应(json可以),所以我可以在重定向到"dashboard"部分(已验证)之前设置超时.我需要一些前端的超时.那可以吗?如果可以,暗示就足够了.提前致谢.

Javascript示例:

$("#login-form").submit(function (e) {

var url = "/login"; // the script where you handle the form input.

$.ajax({
    type: "POST",
    cache : false,
    url: url,
    data: $("#login-form").serialize(), // serializes the form's elements.
    success: function () 
    {       //Do the timeout part, then redirect
            topbar.addClass('success');
            form.addClass('goAway');
            article.addClass('active');
            tries = 0;

    },
    error: function () {
        location.reload(); 
        input.addClass('disabled');
        topbar.addClass('error');
    }

});});
Run Code Online (Sandbox Code Playgroud)

登录表单是通过邮件发送的,我想自己做一个重定向,而不是通过控制器,我主要担心的是javascript重定向上的csrf令牌会改变.

编辑:我发现的另一件事是在ajax设置中包含令牌:

$.ajaxSetup({
    headers: {'X-CSRF-TOKEN': _token}
});
Run Code Online (Sandbox Code Playgroud)

并阻止表单默认操作:

$("#login-form").submit(function (e) {
        e.preventDefault();
Run Code Online (Sandbox Code Playgroud)

这是我的登录表单(所有js和css都包含在父视图中):

@extends('layouts.app')

@section('content')

<form class="form …
Run Code Online (Sandbox Code Playgroud)

javascript php ajax laravel-5

5
推荐指数
1
解决办法
245
查看次数

标签 统计

ajax ×1

javascript ×1

laravel-5 ×1

php ×1