繁体   English   中英

Symfony中不同方法的空路径

[英]Empty route path for different methods in symfony

我正在使用Symfony和FOSRestBundle开发API,并希望使用以下路由:

app / config / routing.yml

page:
  prefix: /page
  resource: "@PageBundle/Resources/config/routing.yml"

PageBundle /资源/Config/routing.yml

page_get:
  path: /{id}
  methods: GET
  defaults:
    _controller: PageBundle:Page:get
    id: null

page_post:
  path: /
  methods: POST
  defaults:
    _controller: PageBundle:Page:post

PUT和DELETE相同...

当我为/ page调用GET时,工作正常,但是当为/ page调用POST时,出现以下错误:

No route found for "POST /page": Method Not Allowed (Allow: GET, HEAD)

我需要调用/ page /而不是/ page ,然后它可以工作...

如何为不同方法使用相同的空路径?

对不起,我的英语不好。

您需要做的是从app / config / routing.yml中删除prefix

page:
    resource: "@PageBundle/Resources/config/routing.yml"

并将其添加到PageBundle / Resources / Config / routing.yml中的路径

moodul_page_get:
    path: /page/{id}
    methods: GET
    defaults:
        _controller: MoodulPageBundle:Page:get
        id: null

moodul_page_post:
    path: /page
    methods: POST
    defaults:
        _controller: MoodulPageBundle:Page:post

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM