是否可以在同一方法中同时使用GET和POST?

时间:2014-02-04 07:41:56

标签: c# wcf rest

我想知道,在wcf rest服务中是否可以同时使用HTTP POST和HTTP Get?我的意思是说客户端页面可以使用post或get来调用我的方法。

我的客户希望我以这种方式实现方法。

  

由于我们的API是“RESTful”服务,我们应该能够同时使用GET   并使用此方法POST。该参数可以放在URL中   一个GET请求以及GET请求的Header部分。什么时候   使用此方法的HTTP POST,参数可以是   存储在标题部分或正文中。

有可能吗?

1 个答案:

答案 0 :(得分:3)

让我们通过编写代码来做到这一点!假设你有一个方法!

[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "Leads",
ResponseFormat = WebMessageFormat.Xml,
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare)]
[WebGet(UriTemplate="/Leads")]
Result AddLeads(ReqLead[] rl); // This is our method.

当您运行服务时,它将编译并成功运行,浏览器将显示一个页面。

Service

现在绿色箭头指向我的服务名称。通过克服它会重定向你一个错误页面,它会让你明白一个想法!见下图。

Error

我希望它会给你一个想法。此外!在您[OperationContract]中,您只会定义一种方法类型,无论是 GET 还是 POST 。你不能兼得。

由于