Laravel Homestead开发:AJAX POST请求因未知原因被重定向

Laravel Homestead开发:AJAX POST请求因未知原因被重定向,ajax,laravel,redirect,post,homestead,Ajax,Laravel,Redirect,Post,Homestead,我使用的是Laravel5.3,我正在编写一个表单,我将其提交给服务器。我想在一开始就指出的是,我已经在这张表格上工作了好几天,没有任何问题。昨天我正在使用我的控制器的存储方法,突然表单不再提交了 开幕式: {!!Form::model($addon=new\App\addon,['name'=>'FinalForm','route'=>'addons.store','enctype'=>'multipart/Form data'])!! 我的路线: Route::resource('addon

我使用的是Laravel5.3,我正在编写一个表单,我将其提交给服务器。我想在一开始就指出的是,我已经在这张表格上工作了好几天,没有任何问题。昨天我正在使用我的控制器的存储方法,突然表单不再提交了

开幕式:

{!!Form::model($addon=new\App\addon,['name'=>'FinalForm','route'=>'addons.store','enctype'=>'multipart/Form data'])!!

我的路线:

Route::resource('addons', 'AddonController');
php artisan路由:列表:

方法:邮寄

URI:插件

名称:addons.store

操作:App\Http\Controllers\AddonController@store

中间件:web、auth

所以现在发生的是,表单被发布,但由于某种原因,get被重定向。chrome就是这么说的:

正如你所看到的,我收到了403禁止回复。为什么请求被重定向到/addons/

正如我之前所说的,我没有做任何更改,我正在处理控制器上store方法的内部逻辑,这时出现了这个问题。我甚至重新启动了宅地盒子(和我的整个机器),我不知道是什么原因造成的

编辑(控制器):


把你的控制代码here@Ordidaad对不起,现在看。顺便说一句,这是在我处理底部被注释掉的部分时发生的。但在注释出来后仍然不起作用。可能是浏览器缓存了301响应,并且现在总是在不实际点击路由的情况下重定向。您的创建方法起作用了吗?在这里调用重定向助手:returnredirect('addons');
/**
 * Store the addon.
 *
 * @return Response
 **/
 public function store(CreateAddonRequest $request, ImageHandler $imageHandler)
{   
    $input = $request->only('title', 'body', 'author', 'slogan', 'version', 'revision', 'published_at', '_img_data');
    $session = $request->session()->all();

    $slug = SlugService::createSlug(Addon::class, 'title', $input['title'], ['unique' => true]);
    $imageHandler->move($slug, $input['body'], 'description');
    $body = $imageHandler->body;

    $addon = Auth::user()->addons()->create([
        'body'          => $body,
        'title'         => $input['title'],
        'slogan'        => $input['slogan'],
        'author'        => $input['author'],
        'locales'       => $session['locales'],
        'published_at'  => $input['published_at']
        ]);
    $addon->categories()->attach($request->input('categories'));

    Storage::makeDirectory('addons/' . $slug . '/files/');
    $extension = Dir::extension('temp/' . $session['file_name']);

    if ($input['revision'] != "") {
        $file = $addon->slug . '-v' . $input['version'] . '-r' . $input['revision'] . '.' . $extension;
    } else {
        $file = $addon->slug . '-v' . $input['version'] . '.' . $extension;
    }

    Storage::disk('local')->move('temp/' . $session['file_name'], 'public/addons/' . $addon->slug . '/files/' . $file);

    // With 5.4 we don't need that check anymore
    if ($input['revision'] == "") {
        $input['revision'] = null;
    }

    $addon->files()->create([
        'file_name'     => $file,
        'hash'          => $session['hash'],
        'version'       => $input['version'],
        'revision'      => $input['revision'],
        'game_version'  => $session['interface'],
        'virustotal'    => $session['virustotal']
    ]);

    dd('done');

    // if ($request->hasFile('images'))
    // {
    //  Storage::makeDirectory('addons/' . $slug . '/images/');

    //  foreach ($request->file('images') as $image)
    //  {
    //      $imageName = uniqid() . '.' . $image->getClientOriginalExtension();
    //      //$image->storeAs('addons/' . $slug . '/images/', $imageName);
    //      $addon->images()->create(array('image_name' => $imageName));
    //  }

    // }

    // flash('The addon has been uploaded.');

    // return redirect('addons');

    dd('done');

    return response()->json([
            'success' => true,
            'message' => 'Images checked',
        ]);
}