2016-03-01 42 views
0

我使用Swagger为服务器生成Slim框架。没有编辑任何东西,我正在测试基本功能。我有一个位于/user/login。这里是脚本我有它:Swagger.io Slim Framework POST错误

$app = new Slim\App(); 
$app->POST('/user/login', function($request, $response, $args) { 

    $queryParams = $request->getQueryParams(); 
    $username = $queryParams['username']; 
    $password = $queryParams['password']; 

    $response->write("Will not work"); 
    return $response; 
}); 
$app->GET('/user/{user_id}', function($request, $response, $args) { 

    $response->write('Works'); 
    return $response; 
}); 

然而,当我尝试POST到URL中使用邮差(铬的应用程序),它会导致500错误。如果我尝试使用GET方法中的任何一种,它都可以。它似乎只在POST方法中发生。

我把它运行在一台Ubuntu机器上,Apache2上安装了PHP。我已经更新了所有最新版本。 ModRewrite已启用,并且覆盖设置为全部。请帮忙!在这一点上,我处于失落状态。

回答

0

我发现了错误。

注意到我,因为两个/user URL的两个网址,一个在/user/login/user/{user_id},它混淆了,不知道该用,导致500错误。

/user/login更改为/login纠正了该问题。

我觉得不知道会发生的愚蠢。

+0

这应该不是问题,因为其中一个是post(),另一个是get()。我使用您的代码示例进行了测试,它适用于我。由于Slim 3.2,你应该在你的错误日志中收到一条消息,告诉你实际的错误。 –