axios将参数传递给laravel路径

时间:2018-03-06 10:52:22

标签: laravel vue.js get routes axios

我正在尝试将vue.js中的idaxios.get传递给laravel路线。 我的axios代码加参数如下,

axios.get('http://localhost/laravel_back/public/api/bpaper',{
  params: {
    id:12
}

我的laravel路线如下,

Route::get('bpaper/{id}', function($id)
{
return 'Paper '.$id;
});

执行此代码时,我的浏览器控制台出现404错误。请求网址是,

Request URL:http://localhost/laravel_back/public/api/bpaper?id=12

我已经让access-control allow methods允许通过axios进行通信。并且代码在不提供参数时运行。任何人都知道修复。

1 个答案:

答案 0 :(得分:2)

考虑服务器端是Route::get('bpaper/{id}', function($id) { ... id是路径的一部分,而不是参数。将其添加到URL。做:

var myId = 12;
axios.get('http://localhost/laravel_back/public/api/bpaper/' + myId)

为了清晰起见,将其添加到myId变量中,您不必这样做。使用:

axios.get('http://localhost/laravel_back/public/api/bpaper/12')

也可以。

此外,如果您有权访问较新版本的JavaScript,则可以从 template strings 中获利:

var myId = 12;
axios.get(`http://localhost/laravel_back/public/api/bpaper/${myId}`)