【发布时间】:2017-06-04 15:09:45
【问题描述】:
我的 api 中的 http 调用有问题。
问题是我有这个 http POST 调用:
axios.post("/api/crear/dimension/", data).then((response) => {
this.success();
console.log(response.data);
}).catch((response) => {
this.error(response)//;
})
使用 axios,因为 vue 资源已被弃用。
问题是,当我想触发呼叫时,会发生这种情况:
GET http://localhost/api/crear/dimension 405 (Method Not Allowed)
请注意 chrome 如何将此作为 GET 调用而不是 POST 调用。 IDK 为什么
但是当我进行 GET 调用时,一切正常。
这是我在 laravel 中的路由文件:
Route::group(['middleware' => 'auth:api'], function () {
Route::get('/user', function (Request $request) {
return $request->user();
});
Route::post('/crear/dimension/', 'AdminController@createDimension');
});
PS:我在 laravel 中使用护照包。一切都配置好 因为我可以毫无问题地接听 GET 电话。事情在 POST 调用中,
我也做了一个 put ,patch call。结果和上面一样,
我也尝试过使用 vue 资源,但没有任何效果
//编辑
我删除了 api 调用末尾的斜线,得到了 401。 欲了解更多信息,请转到HERE
【问题讨论】:
-
我也遇到同样的错误,请问您找到解决办法了吗?
-
是的。您必须删除 laravel 中的 api 调用中的最后一个斜杠,以及使用 axios 或您使用的任何方法的 api 调用中的最后一个斜杠。
-
我为你做了一个要点解释整个事情gist.github.com/pilsoftTeam/093980487651a27d28df034dbd27a3fb
标签: javascript php laravel http vue.js