【发布时间】:2023-03-27 18:00:01
【问题描述】:
我尝试使用 vue js 和 laravel 创建一个 crud 系统。
我已经创建了 api 路由等等...
但是当我点击提交时,我收到了消息405 (Method Not Allowed)
这是我的AddArtist.vue 文件
<form @submit.prevent="add">
<input type="text" class="form-control" v-model="artist.name" placeholder="Artist Name">
<button class="btn btn-success" type="submit">Save</button>
</form>
<script>
export default {
data: function () {
return {
errors: [],
image: '',
artist: {
name: '',
}
}
},
methods: {
add() {
axios.post('/api/artist/store-artist', this.$data.artist)
.then((response) => {
alert('Success add Artist')
console.log(response)
})
},
},
mounted() {
console.log('Add Artist Mounted.')
}
}
</script>
还有我的api.php路线
Route::group(['middleware' => 'cors'], function(){
Route::post('addartist/store-artist', 'ArtistController@store');
});
这里是我的控制器ArtistController.php
public function store(Request $request)
{
$input = $request->all();
dd($input);
}
最后一个是我的模特Artist.php
class Artist extends Model
{
protected $table = 'artist';
protected $fillable = ['artist_name', 'date_birth', 'cover', 'gender'];
}
【问题讨论】:
-
在axios hrader中添加csrf token
-
这是……?
-
@DhruvRaval
if (token) { window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content; } else { console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token'); }已经在 boostrap.js 中设置了
标签: laravel laravel-5 vue.js routes vue-router