客户端的自定义媒体类型

时间:2013-12-30 19:11:32

标签: servicestack

我根据以下链接在服务端创建了自定义媒体类型: http://mono.servicestack.net/ServiceStack.Northwind/vcard-format.htm

我试图查看在客户端使用自定义媒体类型的示例,但找不到任何...我的客户端是C#客户端,我想使用此自定义媒体类型将一些数据发布到服务..

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您确定要/需要自定义媒体类型的客户端吗?

发送JSON,XML,JSV,SOAP或使用Prototype缓冲区的情况很少见,但是当它不适合ServiceStack generic clients时(JSON,XML,JSV,SOAP 1.1 / 1.2和ProtoBuf)还可以访问byte[],原始Stream或基础HttpWebResponse。这对于传输自定义媒体非常有用。 See here了解更多信息和示例。

作为byte[]

byte[] vcard = client.Get<byte[]>("/vcard/1");

作为Stream

using (Stream responseStream = client.Get<Stream>("/vcard/1")) {
    var vcard = responseStream.ReadFully();
}

如果您发现通用REST客户端不符合您的需求,那么您可以基于ServiceStack REST客户端创建自己的REST客户端。您需要实施IRestClientsrc)。

我希望这会有所帮助。