我从WeB APi 2返回一个crossdomain.xml文件,我需要Content-Type标题为“application / xml”或“text / xml”。这是我的控制者:
public class CrossDomainController : ApiController
{
public HttpResponseMessage Get()
{
var xmlString = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + "crossdomain.xml");
var result = Request.CreateResponse(HttpStatusCode.OK);
result.Content = new StringContent(xmlString, Encoding.UTF8, "text/xml");
return result;
}
}
我还添加了一条到WebApiConfig的路线:
config.Routes.MapHttpRoute(
"CrossDomain", "crossdomain.xml",
new { controller = "CrossDomain" });
和Web.config的处理程序:
<add name="XMLHandler" type="System.Web.StaticFileHandler" path="*.xml" verb="GET" />
问题是,当我调用此api时,Content-Type标头始终是application / octet-stream。
我该如何覆盖?