gpt4 book ai didi

php - Laravel 路由在本地完美运行,但在远程不完美。 (澳洲野狗 Api)

转载 作者:搜寻专家 更新时间:2023-10-31 21:27:36 24 4
gpt4 key购买 nike

我正在为一个项目使用 dingo/api,我的所有路线都可以工作,但 1 除外。

路由.php

    $api = app('api.router');
$api->version('v1',['prefix' => 'api'], function ($api) {

$api->post('users', "App\Http\Controllers\Auth\UsersController@store");
...
});

存储方法:

/**
*
* @param \App\Http\Requests\Auth\StoreUserRequest $request
* @return \Illuminate\Http\Response
*/
public function store(StoreUserRequest $request)
{
if( ! $this->isAdminRequest() )
{
return $this->dispatch(new RegisterUserCommand($request));
}
}

此路由抛出 405 Method Not Allowed Exception

php artisan api:routes 显示它已在本地和服务器上注册。我正在使用 POSTMAN 来测试我的 api 并拥有所有必填字段。作为回应,我得到了 Allow : POST

注意:

  • 还有其他可以完美运行的邮寄路线。
  • 还有其他完美运行的 UsersController 路由
  • 我已经尝试删除所有其他路线,但仅此而已,它仍然不起作用。

感谢任何帮助。谢谢。

更新:

好吧,这对我来说是一个非常愚蠢的错误。我正在点击 'domain/api/users/'。删除尾随 '/' 有效。但问题是,本地 '/' 有效,而不是在服务器上。因此,也许可以保留这个问题以进行一些解释。

最佳答案

很好的问题,后来我自己也遇到了这个问题。您的更新应该在答案中,所以如果您这样做,我可能会删除我的。我的问题是我的 action 中的尾部斜线,例如/some/action/ 而不是 /some/action 路由期望它是后一种形式。

考虑到本地环境中的行为,我曾假设 Laravel 会将这个可选的尾部斜线作为一项功能来处理,但事实并非如此。

关于php - Laravel 路由在本地完美运行,但在远程不完美。 (澳洲野狗 Api),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33891359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com