带有字典参数的 WCF HTTP POST Rest 服务

标签 wcf rest post

我正在开发一个 WCF 休息服务,该服务需要接收 NAme 值对值的列表。这些值尚不清楚,因此我们需要使用名称值对的通用列表。

我尝试了多种方法,但我不确定最好的方法是什么。我想我可以访问 HttpContext 并从请求正文中提取值,但我无法做到这一点。

让 WCF 操作接受带有名称值对列表的 HTTP Post 以便可以在操作中读取它们的最佳方法是什么,类似于您将它从 Request["Key"] 中取出的方式?

最佳答案

一种选择是创建一个 JSON 对象,以类似于以下格式发布到服务:

{"kvPairs":[{"Key":"key1","Value":"value1"}, {"Key":"key2","Value":"value2"}]}

在服务端,设置类似如下的方法:
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "")]
string DoSomething(Dictionary<string, string> kvPairs);

关于带有字典参数的 WCF HTTP POST Rest 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11315065/

相关文章:

node.js - 如何使用 Express.js 从 Node.js 连接到第三方 API

java - 使用spring boot的json输出中的日期格式

java - 如何正确构建 REST-API 端点

javascript - 如何在 Node.js 中向 Post 请求添加查询

WCF 服务未在浏览器中返回任何结果

wcf - .NET Core RC2 - 使用外部 WCF

c# - 清理 Silverlight 输入

wcf - (WCF)如何在我的服务中获取登录客户端的用户名?

php Post 限制为 1000 个变量

ajax - 尽管有同源策略,但使用 angularJS 发送 POST 请求