是否可以将HTML作为Web服务调用的响应发送?

时间:2012-06-21 12:26:22

标签: .net web-services rest

由于Web服务请求的响应格式似乎是Xml或Json。但是,由于HMTL是一种XML,我想知道将HTML发送回客户端是否可能(以及常见做法)......

3 个答案:

答案 0 :(得分:1)

您可以向客户端和嵌入式html代码发送xml响应。它不是发送html的常见做法,但有可能

答案 1 :(得分:0)

您可以直接返回HTML并在客户端上解释结果,也可以将HTML包装在结果对象中,然后由Web服务框架对SOAP或JSON进行编码。

答案 2 :(得分:0)

返回HTML不是一般做法,但您可以通过将其包含在JSon或XML中的字符串中来返回HTML

你可以这样做:

[WebMethod]
public string GetHTMLString()
{
    return "<HTML><TITLE>...";
}

return html from wcf service

上找到了这个
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public Stream getHtml()
{
    // get the html
    var html = DoSomethingToGetHtml();  //Not a built-in .Net method ;)

    // we want our result interpreted as plain html
    WebOperationContext.Current.OutgoingResponse.ContentType = "text/html";

    // create a stream from our html because trying to return a string adds an extra header tag
    //      to the response.  Returning a stream returns the html by itself
    var result = new MemoryStream(ASCIIEncoding.UTF8.GetBytes(html));

    // return the result
    return result;
}