我有一个简单的 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 编码?