【问题标题】:Web Service capture ResponseWeb 服务捕获响应
【发布时间】:2012-09-13 00:21:21
【问题描述】:

我的 Web 服务调用了一个 url,它返回一个值,我必须捕获该值并在不同的函数中使用。

我最近才开始使用 Web 服务,并且对在 Web 服务中调用 url 的概念非常陌生(之前在这个论坛上为需要更多信息的人提问和回答)

Webservice method to call a url

我的网络服务是:保险服务。

我的客户通过保险服务向我发送数据,该服务调用返回保险号码的 url。

如何获取此保险号码?我以为我可以使用 session 来捕获它,但我错了,保险 Number 为 null 并带有对象引用错误。

int insuranceNo;
insuranceNo = Convert.ToInt16(HttpContext.Current.Session["insuranceNo"]);

应该和响应有关吧?

我想我可以尝试用谷歌搜索我正在寻找的东西,但老实说,我不知道该怎么称呼它才能搜索它。我想我会在这个论坛上再试一次,因为我在这里找到了这个函数第一部分的答案。

调用url的代码:

 string url = string.Format("www.insuranceini.com/insurance.asp?fileno1={0},&txtfileno2={1‌​}&username={2}&userid={3}&dteinsured={4}&dteDob={5}&InsurerName={6}", txtfileno1, txtfileno2, username, userid, dteinsured,dteDob,InsurerName)
WebRequest request = HttpWebRequest.Create(url);
using(WebResponse response = request.GetResponse())
{
    using(StreamReader reader = new StreamReader(response.GetResponseStream()))
    {
        string urlText = reader.ReadToEnd();
        //Do whatever you need to do
    }
}

我将不胜感激任何类型的指针或开始寻找的地方或任何建议。

【问题讨论】:

  • 网络服务返回什么样的数据? XML/JSON 还是其他?如果它只是像您的示例一样的 url 参数,请尝试在您的网络浏览器中浏览它并查看您得到的响应。或者使用 Fiddler 之类的工具来查看 HTTP 响应。
  • 是的,除非您的 Web 服务明确将其设置为会话,否则您不会在那里找到它。如果它是 JSON 正文,您需要将其解析为您的代码可以读取的对象,对于 xml 也是如此。
  • 嗯,它应该以 xml 格式返回,但现在一切都在我初始化我的保险的地方崩溃了,因为我很确定保险号码不/不应该被捕获为会话。
  • 谢谢你,但这正是我要问的,我该怎么做?
  • ReadToEnd之后的结果是什么?

标签: c# .net web-services httpwebrequest asmx


【解决方案1】:

代码开始给出不同的错误。关闭此并参考:Datetime Conversion and Parsing

感谢大家的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-27
    • 1970-01-01
    • 1970-01-01
    • 2017-03-11
    • 1970-01-01
    相关资源
    最近更新 更多