[英]POST http://localhost:8000/offers-ajax/store 419 (unknown status) Laravel AJAX
I'm a beginner in AJAX and trying to post data form by using AJAX, but this error shows in the console:我是 AJAX 的初学者,并尝试使用 AJAX 发布数据表单,但此错误显示在控制台中:
POST http://localhost:8000/offers-ajax/store 419 (unknown status)
POST http://localhost:8000/offers-ajax/store 419(未知状态)
I do not know why;我不知道为什么; I tried a lot but nothing seems to work.
我尝试了很多,但似乎没有任何效果。
I tried to post data without using AJAX queries and it works fine.我尝试在不使用 AJAX 查询的情况下发布数据,它工作正常。
These are the routes:这些是路线:
Route::group(['prefix'=>'offers-ajax'],function(){
Route::get('/create','AjaxController@create')-> name('ajax.offer.create');
Route::post('/store','AjaxController@store')-> name('ajax.offer.store');
});
Controller: Controller:
public function store(OffersRequest $request)
{
$file_name = $this->saveImage($request->photo, 'images/offers');
// Offer::create($request -> except(['_token']));
Offer::create([
'photo' => $file_name,
'name_ar' => $request->name_ar,
'name_en' => $request->name_en,
'details_ar' => $request->details_ar,
'details_en' => $request->details_en,
'price' => $request->price,
]);
}
blade create page:刀片创建页面:
@extends('layouts.app')
@section('content')
<div class="container">
<form method="POST" class="needs-validation" novalidate action=""
enctype="multipart/form-data">
@csrf
<div class="form-group">
<label for="exampleInputEmail1">chose Photo</label>
<input type="file" class="form-control" name="photo">
@error('photo')
<small class="form-text text-danger">{{$message}}</small>
@enderror
</div>
<div class="form-group">
<label for="Name">{{__('messages.create_name')}}</label>
<input type="text" class="form-control" id="name" name="name_ar" placeholder="Enter name">
@error('name_ar')
<span class="text-danger">{{$message}}</span>
@enderror
</div>
<div class="form-group">
<label for="Name">{{__('messages.create_name_en')}}</label>
<input type="text" class="form-control" id="name" name="name_en" placeholder="Enter name">
@error('name_en')
<span class="text-danger">{{$message}}</span>
@enderror
</div>
<div class="form-group">
<label for="price">{{__('messages.create_price')}}</label>
<input type="text" class="form-control" id="price" name="price" placeholder="price here">
@error('price')
<span class="text-danger">{{$message}}</span>
@enderror
</div>
<div class="form-group">
<label for="details">{{__('messages.create_details')}}</label>
<input type="text" class="form-control" id="details" name="details_ar" placeholder="details here">
@error('details_ar')
<span class="text-danger">{{$message}}</span>
@enderror
</div>
<div class="form-group">
<label for="details">{{__('messages.create_details_en')}}</label>
<input type="text" class="form-control" id="details" name="details_en" placeholder="details here">
@error('details_en')
<span class="text-danger">{{$message}}</span>
@enderror
</div>
<button type="button" id="save_offer" class="btn btn-primary">create</button>
</form>
</div>
@stop
@section('script')
<script>
$(document).on('click', '#save_offer', function(){
$.ajax({
type: 'post',
url: "{{Route('ajax.offer.store')}}",
data: {},
success: function (data){
}, error: function (reject){
}
});
});
</script>
@stop
Please could you help me请你帮帮我
You need to add meta tag in your html page您需要在 html 页面中添加元标记
<meta name="csrf-token" content="{{ csrf_token() }}">
Then in js add this in the beginning然后在js中在开头添加这个
$.ajaxSetup({
data: {
_token: $('meta[name="csrf-token"]').attr('content')
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.