如何在休息Web服务中通过请求体传递请求值

时间:2012-04-23 05:52:40

标签: .net web-services

我在.net中创建简单的演示休息Web服务,有两种方法可以在Web服务中发送数据

Through Query String
Through Request Body

我编写了以下代码,并且能够通过查询字符串

使用Web服务
    [WebInvoke(Method = "POST",
    ResponseFormat = WebMessageFormat.Xml,
    BodyStyle = WebMessageBodyStyle.Wrapped,
    UriTemplate = "xml?id={id}")]
    string XMLData(string id);

    public string XMLData(string id)
    {
          return "You  request id is  " + id ;
    }

但我必须通过请求正文而不是通过查询字符串传递ID值。我该怎么做?

1 个答案:

答案 0 :(得分:0)

如果必须使用Form Body,则必须在方法中添加一个参数:

string XMLData(string id, data As IO.Stream);

然后在该方法中,您可以通过以下方式访问帖子的正文:

 Dim strData As String = New IO.StreamReader(data).ReadToEnd()