C# 以JSON作为响应格式调用WCF Rest方法要求下载文件?
这与以下内容有关,但我想我会创建另一个帖子,这样问题就不会变得太复杂:C# 以JSON作为响应格式调用WCF Rest方法要求下载文件?,c#,wcf,json,C#,Wcf,Json,这与以下内容有关,但我想我会创建另一个帖子,这样问题就不会变得太复杂: 当我将响应格式更改为XML时,浏览器会正确返回响应,但如果我尝试使用JSON作为响应格式,它会询问我是否要下载该文件。为了查看文件中的内容,我下载了它,它包含纯文本json格式的响应。是否缺少一些配置?这可能与JSON http响应中的MIME类型没有设置为浏览器“认为”应该在页面中打开的内容有关 在WebGet属性中,您的WebMessageBodyStyle设置为什么 请参见这与预期完全一致。原因如下 WCF JSON响
当我将响应格式更改为XML时,浏览器会正确返回响应,但如果我尝试使用JSON作为响应格式,它会询问我是否要下载该文件。为了查看文件中的内容,我下载了它,它包含纯文本json格式的响应。是否缺少一些配置?这可能与JSON http响应中的MIME类型没有设置为浏览器“认为”应该在页面中打开的内容有关 在
WebGet
属性中,您的WebMessageBodyStyle
设置为什么
请参见这与预期完全一致。原因如下 WCF JSON响应的内容类型为“application/JSON”。大多数常见的浏览器不会内联显示这种内容类型的内容,因为它们不知道如何处理“application/json”内容。换句话说,他们对待它的方式不同于纯文本、HTML、XML或JPEG内容 该服务没有问题,WCF或IIS中也没有设置允许您配置服务或服务端,从而使浏览器不再提示您下载
不过,您可以尝试更改IE或浏览器处理内容类型的方式。这里有一个可能的起点:WebMessageFormat是JSON,它要求我下载文件。如果我将其保留为XML,它将显示在浏览器中。我问的是WebMessageBodyStyle,而不是WebMessageFormat。