具有基于方法的端点的 Werkzeug URL 映射仅返回 Method Not Allowed
Posted
技术标签:
【中文标题】具有基于方法的端点的 Werkzeug URL 映射仅返回 Method Not Allowed【英文标题】:Werkzeug URL map with method-based endpoints return only Method Not Allowed 【发布时间】:2012-08-25 12:20:34 【问题描述】:这是我们映射的截断版本:
url_map = Map([
Rule('/actions/<int:id>/', endpoint='actions.get_action', methods=('GET')),
Rule('/actions/<int:id>/', endpoint='actions.put_action', methods=('PUT')),
Rule('/actions/<int:id>/', endpoint='actions.dismiss_action', methods=('DELETE'))
])
经过大量搜索,我发现一些人在 (http://nullege.com/codes/search/werkzeug.routing.Rule) 处做同样的事情......但是当我这样做时,所有三个都返回为不允许的方法。我可能会这样做
... methods=('GET', 'PUT', 'DELETE') ...
并且有一个将请求分派给备用函数的端点,但是根据我的阅读,我的映射应该可以正常工作,或者至少,如果我知道正确的语法(我已经在上面的链接之外找不到。)
关于我做错了什么有什么想法吗?
【问题讨论】:
【参考方案1】:在您的规则列表中,方法参数不应该是列表吗?类似的东西
... methods=('GET',) ...
注意使它成为元组的逗号。
【讨论】:
以上是关于具有基于方法的端点的 Werkzeug URL 映射仅返回 Method Not Allowed的主要内容,如果未能解决你的问题,请参考以下文章