【问题标题】:swagger-ui How do you hide rest methods not implementedswagger-ui 如何隐藏未实现的其他方法
【发布时间】:2017-06-16 19:00:26
【问题描述】:

也许我只是想念它,我想隐藏一些没有实现它们的控制器的休息方法,如选项,删除,头

这个有注释吗?我在文档中找不到 使用https://github.com/nelmio/NelmioApiDocBundle v3

当前,当我查看 /api/doc 任何控制器时,即使我只实现了 GET 方法,我也会列出所有其余方法。

<?php

namespace ApiBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Security;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\JsonResponse;

use Swagger\Annotations as SWG;


class UserController extends Controller
{


    /**
     * @Security("is_granted('IS_AUTHENTICATED_FULLY')")
     * @Route("/api/users", name="get_users", methods={"GET"})
     *
     * @SWG\Response(
     *     response=200,
     *     description="Returns all users"
     * )
     * @SWG\Tag(name="users")
     *
     *
     * @return \Symfony\Component\HttpFoundation\JsonResponse
     */
    public function getUsersAction()
    {

        $repo = $this->getDoctrine()
             ->getRepository('AccountBundle:User');
        $users = $repo->createQueryBuilder('q')
            ->getQuery()
            ->getArrayResult();

        return new JsonResponse($users);

    }

}

【问题讨论】:

  • 好吧,你设置接口的原因是遵循并实现它们的所有方法。如果您的类正在实现一个接口并且没有实现所有方法,那么您只是做错了。创建一个简单的接口,没有那些未使用的签名并让你的类实现它。
  • 这个类没有实现接口
  • 你能贴出你所有的课程代码吗?
  • 更新全类代码
  • 您的代码是/api/users,但屏幕截图显示/api/contacts。你能更新你的帖子,让代码和图像引用相同的东西吗?

标签: symfony swagger-ui


【解决方案1】:

如果你没有在 @Route() 注释中指定控制器中的方法,那么它会显示所有方法但是如果你将 methods={} 添加到 Route 注释那么它只会列出定义的方法

 * @Route("/api/users", name="get_users", methods={"GET"})

【讨论】:

    【解决方案2】:

    @RequestMapping中指定@Value@method类型

    @RequestMapping(value="/instances/all",method=RequestMethod.GET)
    @JsonFormat
    public String showInstances(){
       return "instances";  
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-02
      • 2019-02-08
      • 1970-01-01
      • 2015-02-18
      • 1970-01-01
      • 1970-01-01
      • 2021-10-24
      相关资源
      最近更新 更多