WCF REST:传入消息具有意外的消息格式“Json”。预期的邮件格式为'Raw'

问题描述 投票:1回答:2

所以我已经看到很多关于错误的问题反过来了,但不是这样。

在我的WCF服务中,我已经定义了以下方法:

[OperationContract]
[WebInvoke(BodyStyle = WebMessageBodyStyle.Bare, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "v1/posttest")]
void PostTest(Stream incoming);

在我的请求标题中,我将Content-Type设置为application / json

所以一切都应该有效,对吧?但是,我收到400 Bad Request错误以及您在问题标题中看到的通知。

任何帮助表示赞赏。非常感谢!

c# json rest wcf postman
2个回答
0
投票

事实证明,我应该尝试最明显的事情......在我的客户端中删除Content-Type标头解决了这个问题。

它似乎对我来说似乎不直观,任何人都可以解释为什么WCF这样做?


0
投票

非常好!非常感谢。

这完美运行:

read: {
        url: "http://localhost:33473/Service2.svc/GetProfile", //contentType: "application/json; charset=utf-8", // tells the web service to serialize JSON
        type: "POST", //use HTTP POST request as the default GET is not allowed for svc
      }
© www.soinside.com 2019 - 2024. All rights reserved.