ServiceStack路由GET请求POST方法

时间:2014-12-04 16:25:21

标签: c# servicestack url-routing

对于我们目前拥有的一些GET请求,我一直遇到Uri的问题,而我们建议的解决方案是发出帖子请求。

我更喜欢使用GetXResponse Get(GetXRequest请求)签名来保留我的服务方法。

是否有任何方法可以配置ServiceStack以解决在请求以' Get'?开头时获取方法的问题。

1 个答案:

答案 0 :(得分:1)

使用X-Http-Method-Override

自定义请求处理

请求DTO命名为Get操作没有特殊的启发式,但在发出请求时,您可以使用HTTP标头,QueryString或FormData中的X-Http-Method-Override来指定要执行的不同动词请求为。

使用Any()方法

处理任何动词

您还可以使用Any方法处理所有动词(例如inc GET / POST),例如:

GetXResponse Any(GetXRequest request) { .. }

Any方法用作后备,如果你还有具有相同请求DTO的特定动词,它将使用它们,即:

GetXResponse Get(GetXRequest request) { .. }
GetXResponse Post(GetXRequest request) { .. }