首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Asp.net中使用HTTP webservice?

问如何在Asp.net中使用HTTP webservice?
EN

Stack Overflow用户
提问于 2010-03-30 16:16:45
回答 2查看 850关注 0票数 0

我想根据http url返回的结果生成html内容。

http://www.zillow.com/webservice/GetDeepSearchResults.htm?zws-id=X1-ZWz1c239bjatxn_5taq0&address=2114+Bigelow+Ave&citystatezip=Seattle%2C+WA

该页面将为您提供一些XML结果。我想转换为使用该XML生成HTML。我不知道从哪里开始?有人能为asp.net提供一些指导原则或示例代码吗?

详情请访问:http://www.zillow.com/howto/api/GetDeepSearchResults.htm

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-30 16:26:48

要获取数据,您可以使用HttpWebRequest类,这是我必须使用的一个示例,但对于您的需要来说,它可能有点过头了(并且您需要确保您正在做正确的事情-我怀疑上面的操作是GET而不是POST)。

代码语言:javascript
复制
Uri baseUri = new Uri(this.RemoteServer);

HttpWebRequest rq = (HttpWebRequest)HttpWebRequest.Create(new Uri(baseUri, action));
rq.Method = "POST";
rq.ContentType = "application/x-www-form-urlencoded";

rq.Accept = "text/xml";
rq.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;

Encoding encoding = Encoding.GetEncoding("UTF-8");
byte[] chars = encoding.GetBytes(body);
rq.ContentLength = chars.Length;

using (Stream stream = rq.GetRequestStream())
{
    stream.Write(chars, 0, chars.Length);
    stream.Close();
}

XDocument doc;
WebResponse rs = rq.GetResponse();
using (Stream stream = rs.GetResponseStream())
{
    using (XmlTextReader tr = new XmlTextReader(stream))
    {
        doc = XDocument.Load(tr);
        responseXml = doc.Root;
    }

    if (responseXml == null)
    {
        throw new Exception("No response");
    }
 }

 return responseXml;

一旦您获得了需要呈现HTML的数据,就需要有很多很多的选择-如果您只想通过最少的进一步处理将所获得的内容转换为HTML,那么您可以使用XSLT -这本身就是一个问题。如果你需要用它做一些事情,那么这个问题就太模糊了,你需要更具体一些。

票数 1
EN

Stack Overflow用户

发布于 2010-03-30 16:28:23

创建一个xsl样式表,并将样式表元素注入到页面生成的xml中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2543700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档