我有一个简单的 WCF REST 方法,它将返回一个字节数组中的图像/文件/等:
[OperationContract]
[WebGet(UriTemplate = "TestMethod")]
byte[] TestMethod();
服务契约webHttpBinding
与以下行为绑定:
<endpointBehaviors>
<behavior name="webHttpBehavior">
<webHttp defaultOutgoingResponseFormat="Json" />
</behavior>
</endpointBehaviors>
该方法工作正常,除了字节数组的格式如下:
[25,15,23,64,6,5,2,33,12,124,221,42,15,64,142,78,3,23]
如果我删除属性defaultOutgoingResponseFormat="Json"
,服务默认为 XML 格式,结果以 Base64 编码,如:
GQ8XQAYFAiEMfN0qD0COTgMX
这可以节省数据传输,尤其是在数据变大时。
如何为 JSON 输出格式启用 Base64 编码?