小编Kei*_*owe的帖子

在Laravel 5.4中禁用请求验证重定向

所以我正在尝试为内部项目开发一个rest API,我遇到了一个问题,当表单请求验证失败时,它会显示@index响应.

所以我有两条路线;

Route::get('/api/clients', 'ClientController@index');
Route::post('/api/clients', 'ClientController@store');
Run Code Online (Sandbox Code Playgroud)

@index列出所有客户端,@store创建一个新客户端,我在方法上有一个表单请求验证器,@store它检查为客户端提供的名称.

我想要的是当验证器失败时,它会显示带有验证错误的JSON响应.但我认为它发生的是验证失败,因此它重定向回同一页面,但重定向GET不是POST,所以它列出了所有客户端.

我知道你可以设置你的标题,使它看起来像一个ajax请求,它将正确显示JSON响应,但我希望它显示JSON响应,无论它是否是ajax.

我已经尝试覆盖response我的验证器中的方法,该方法不起作用,我已经尝试wantsJson在验证器中设置方法以返回true,这再次无效.

非常感谢帮助.

代码如下......

web.php

Route::get('/api/clients', 'ClientController@index');
Route::get('/api/clients/{client}', 'ClientController@show');
Route::post('/api/clients', 'ClientController@store');
Route::put('/api/clients/{id}', 'ClientController@update');
Route::delete('/api/clients/{id}', 'ClientController@delete');
Run Code Online (Sandbox Code Playgroud)

ClientController.php

namespace App\Http\Controllers;

use App\Client;
use App\Http\Requests\ClientRequest;

class ClientController extends Controller
{

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(ClientRequest $request)
    {
        return Client::create([
            'title'   => request('title'),
            'user_id' => auth()->id() …
Run Code Online (Sandbox Code Playgroud)

json request-validation laravel

8
推荐指数
5
解决办法
9095
查看次数

Vue.js 2,从指令更改数据

使用单个文件组件,如何从指令更改数据属性?

所以,例如,我有......

export default {
    name: 'app',
    data: function() {
        return {
            is_loading: true
        }
    },
    directives: {
        do_something: {
            bind: function(el, binding, vnode) {
                // Change the is_loading property
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

起初,我以为我可以做this.is_loading = false,但是thisundefined.

javascript directive properties vue.js vue-component

6
推荐指数
1
解决办法
4379
查看次数