Laravel Homestead开发:AJAX POST请求因未知原因被重定向
我使用的是Laravel5.3,我正在编写一个表单,我将其提交给服务器。我想在一开始就指出的是,我已经在这张表格上工作了好几天,没有任何问题。昨天我正在使用我的控制器的存储方法,突然表单不再提交了 开幕式: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
{!!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',
]);
}