我想不将JSON数据放在正文中并使用URI中的参数
我可以通过使用类似的东西来获取JSON数据。
[WebInvoke(Method = "POST",
UriTemplate = "Checkin/SetPicture/{PatientProfileId}",
BodyStyle = WebMessageBodyStyle.Bare, // this is key for combining params with Stream
ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json)]
Stream SetPicture(string PatientProfileId, PictureData data);
和PictureData - 非常简单:
[DataContract]
class PictureData {
[DataMember]
internal string Base64 { get; set; }
}
如果我发布类似这样的内容(来自REST控制台/客户端)
http://localhost:9001/Checkin/SetPicture/666
Content-Type: application/json
Body -
{ "Base64": "AAAAAA" }
如果我只想要身体中的Base64字符串,而不是JSON,我该怎么做?现在它给出了“服务器错误 - 检查日志”的响应,但当然日志中没有任何内容。这是合同中的解析问题,因为课程从未被击中。
ie Body -
AAAAAA
这是一个相关的SO查询,但并不能完全满足我的需要。
Passing XML string in the body of WCF REST service using WebInvoke