dsi36131 2014-10-07 12:28
浏览 76

如何让php-swagger选择我的HTTP GET方法

<?php
/**
 * @SWG\Resource(
 *      basePath="http://dizplayzone.com/api",
 *      resourcePath="/account",
 *      description="Read information on a company dashboard",
 *      swaggerVersion="1.2",
 *      apiVersion="1.1",
 * )
 */

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\JsonResponse;

$account = $app['controllers_factory'];

/**
 *      /account/{id}
 *      ------------------------------------------------------------------------
 *
 *      @SWG\Api(
 *              path="/account/{id}",
 *              @SWG\Operation(
 *                      method="GET",
 *                      summary="Returns info from a company dashboard",
 *                      notes="Returns info from a company dashboard",
 *                      type="account",
 *                      nickname="view_account",
 *                      @SWG\Parameter(
 *                              name="id",
 *                              description="Company ID",
 *                              required=true,
 *                              type="integer",
 *                              paramType="path"
 *                      ),
 *                      @SWG\ResponseMessage(code=404, message="Bad, really bad name.")
 *              ),
 *      )
 *
 *
 * @trans foo,bar
 *
 */

 $account->get('/account/{id}', function ($id) use ($app) {

  ...


    return "Welcome {$user['username']}!";
 });

/**
 *      /account/{id}
 *      ------------------------------------------------------------------------
 *
 *      @SWG\Api(
 *              path="/account/{id}",
 *              @SWG\Operation(
 *                      method="POST",
 *                      summary="Add info to a company dashboard",
 *                      notes="Add info to a company dashboard",
 *                      type="account",
 *                      nickname="post_to_account",
 *                      @SWG\Parameter(
 *                              name="id",
 *                              description="Company ID",
 *                              required=true,
 *                              type="integer",
 *                              paramType="path"
 *                      ),
 *                      @SWG\ResponseMessage(code=404, message="Bad, really bad name.")
 *              )
 *      )
 *
 *
 */

$account->post('/account/{id}', function ($id) use ($app) {

 ....
});

return $account;

However, swagger-php returns this JSON response:

{
"basePath":"http://dizplayzone.com/api",
"swaggerVersion":"1.2",
"apiVersion":"1.1",
"resourcePath":"/account",
"apis":[
    {
        "path":"/account/{id}",
        "operations":[
            {
                "method":"POST",
                "summary":"Add info to a company dashboard",
                "nickname":"post_to_account",
                "type":"account",
                "parameters":[
                    {
                        "paramType":"path",
                        "name":"id",
                        "type":"integer",
                        "required":true,
                        "description":"Company ID"
                    }
                ],
                "responseMessages":[
                    {
                        "code":404,
                        "message":"Bad, really bad name."
                    }
                ],
                "notes":"Add info to a company dashboard"
            }
        ]
    }
]

}

Note that it ignores the GET method HTTP operation ?? I think this exact syntax for the annotations worked fine a couple of hours ago, but I must have changed something because now it no longer works.... Any ideas ?

  • 写回答

2条回答 默认 最新

  • 普通网友 2014-10-07 12:50
    关注

    Hmm strange, now I removed the entire annotation for GET, re-wrote it and re-inserted it and it it works....

    评论

报告相同问题?

悬赏问题

  • ¥20 @microsoft/fetch-event-source 流式响应问题
  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式
  • ¥50 potsgresql15备份问题
  • ¥15 Mac系统vs code使用phpstudy如何配置debug来调试php
  • ¥15 目前主流的音乐软件,像网易云音乐,QQ音乐他们的前端和后台部分是用的什么技术实现的?求解!
  • ¥60 pb数据库修改与连接
  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False