我正在使用RESTful方法构建webservice,并使用WCF WebHttp API(.NET v4)。 为了满足一些传统的功能,我需要接受通过POST和处理it..For例如我的方法之一,看起来原始XML消息,如:使用WCF WebHttp API实现服务中的POST方法获取原始xml
[WebInvoke(UriTemplate = "Hello", Method = "POST")]
public Message ProcessMessage(string xmlMessage)
{
if (String.IsNullOrWhiteSpace(xmlMessage))
{
return WebOperationContext.Current.CreateXmlResponse(ProcessingFailedReply);
}
var message = XElement.Parse(xmlMessage);
return WebOperationContext.Current.CreateXmlResponse(ProcessingSuccessfullReply);
}
然而,每次我尝试发布一些XML来“/你好“我收到一条消息,说这种格式是无效的,它需要特别编码的字符串。我猜API使用标准模式来自动序列化xmlMessage。当我访问的帮助(“/帮助”)我给出的例子格式为我xmlMessage:
<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">String content</string>
如何允许并处理为原料在这种情况下张贴的要求吗? 我看了看API和唯一相关的类(WebOperationContext.Current.IncommingRequest)没有任何方法来检索原始消息...
感谢 Z ...
我试过这个,但是当我发布它仍然告诉我我没有“正确”的格式... – zam6ak
错误信息是什么?它应该只适用于任何有效的XML请求。 – Maurice
我知道了......在客户端,你必须将内容类型设置为“text/xml”...没有它,它不工作... – zam6ak