我想知道,在 wcf 休息服务中是否可以以相同的方法同时使用 HTTP POST 和 HTTP Get?我的意思是说客户端页面可以使用 post 或 get 来调用我的方法。
我的客户希望我以这种方式实现一个方法。
由于我们的 API 是“RESTful”服务,因此我们应该能够通过此方法使用 GET 和 POST。该参数可以放置在 GET 请求的 URL 中,也可以放置在 GET 请求的 Header 部分中。使用带有此方法的 HTTP POST 时,参数可以存储在标头部分或正文中。
是否可以?
让我们通过编写代码来实现吧!假设你有一个方法!
[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.
Run Code Online (Sandbox Code Playgroud)
当您运行服务时,它将成功编译并运行,浏览器将向您显示一个页面。

现在绿色箭头指向的是我的服务名称。通过点击它,您将重定向到一个错误页面,它会让您清楚地了解想法!请参见下图。

我希望它能给你一个想法。而且!在您中,[OperationContract]您将仅定义一种方法类型,无论是GET还是POST。你不能两者兼得。
谢谢
| 归档时间: |
|
| 查看次数: |
2692 次 |
| 最近记录: |