public static string GetHttpResponse(string url)

{

string content = "";

// Create a new HttpWebRequest object.Make sure that

// a default proxy is set if you are behind a fure wall.

//其中,HttpWebRequest实例不使用HttpWebRequest的构造函数来创建,二是使用WebRequest的Create方法来创建.

HttpWebRequest myHttpWebRequest1 = (HttpWebRequest)WebRequest.Create(url);

//myHttpWebRequest1.Method = "POST";

//myHttpWebRequest1.ContentType = "application/x-www-form-urlencoded";

////不维持与服务器的请求状态

myHttpWebRequest1.KeepAlive = true;

//myHttpWebRequest1.AllowAutoRedirect = false;

//创建一个HttpWebRequest对象

//Assign the response object of HttpWebRequest to a HttpWebResponse variable.\

HttpWebResponse myHttpWebResponse1;

try

{

myHttpWebResponse1 = (HttpWebResponse)myHttpWebRequest1.GetResponse();

//设置页面的编码模式

//System.Text.Encoding utf8 = System.Text.Encoding.gb;

//System.Text.Encoding.GetEncoding("GB2312").GetString(System.Text.Encoding.UTF8.GetBytes("你的xml字符串"));

Stream streamResponse = myHttpWebResponse1.GetResponseStream();

StreamReader streamRead = new StreamReader(streamResponse, System.Text.Encoding.GetEncoding("GB2312"));

Char[] readBuff = new Char[256];

//这里使用了StreamReader的Read()方法,参数意指从0开始读取256个char到readByff中.

//Read()方法返回值为指定的字符串数组,当达到文件或流的末尾使,方法返回0

int count = streamRead.Read(readBuff, 0, 256);

while (count > 0)

{

String outputData = new String(readBuff, 0, count);

content += outputData;

count = streamRead.Read(readBuff, 0, 256);

}

myHttpWebResponse1.Close();

return content;

}

catch (WebException ex)

{

content = "在请求URL为:" + url.ToString() + " 的页面时产生错误,错误信息为" + ex.ToString();

return content;

}

}

public static IdentlyInfo CredentialsInfo(string identity, string userName)

{

IdentlyInfo identlyInfo = new IdentlyInfo();

string retStr = "";

string url = "http://172.168.254.34:9090/NCIIS/PersonInfoServlet?id=" + identity + "&name=" + userName + "";

//  strResult = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><data><status></status><id>身份证号码</id><name>姓名</name><photo>http://b.hiphotos.baidu.com/image/pic/item/f11f3a292df5e0fef825890b5e6034a85edf72fe.jpg</photo></data>";

string strResult = GetHttpResponse(url);

int start, end;

string statusCode = "<status>";

// string strorderstate = null;

start = strResult.LastIndexOf(statusCode) + statusCode.Length;

int starts = strResult.IndexOf("</status>");

if (start != -1)

{

identlyInfo.status = strResult.Substring(start, starts - start);

}

string id = "<id>";

//string strid = null;

start = strResult.LastIndexOf(id) + id.Length;

starts = strResult.IndexOf("</id>");

if (start != -1)

{

identlyInfo.id = strResult.Substring(start, starts - start);

}

string name = "<name>";

//string strname = null;

start = strResult.LastIndexOf(name) + name.Length;

starts = strResult.IndexOf("</name>");

if (start != -1)

{

identlyInfo.name = strResult.Substring(start, starts - start);

}

string photo = "<photo>";

//string strphoto = null;

start = strResult.LastIndexOf(photo) + photo.Length;

starts = strResult.IndexOf("</photo>");

if (start != -1)

{

identlyInfo.photo = strResult.Substring(start, starts - start);

}

if (identlyInfo.status != "00")

{

retStr = "身份证和姓名不匹配!";

}

else

{

retStr = identlyInfo.photo;

}

return identlyInfo;

}

根据URL请求 返回XML字符串的更多相关文章

  1. ajax请求返回json字符串/json对象 处理

    1. 返回json字符串如何处理 $.ajax({ url:xxx, success:function(date){ }, error:function(){ } }); 通过最原始的返回: Prin ...

  2. 【Spring MVC】spring mvc中相同的url请求返回不同的结果

    在项目中凡是使用Spring MVC这种控制器的,大多都是返回JSON数据对象,或者JSP页面. 但是相同的URL请求如何让他自动的选择放回的是什么? 在这里有由于鄙人没有亲自测试过,就不敢乱贴代码, ...

  3. c# 对SOAP返回XML字符串的解析方法

    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP:Head ...

  4. jsp Ajax请求(返回xml数据类型)

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  5. ajax请求返回Json字符串运用highcharts数据图表展现数据

    [1].[图片] Json字符串和highcharts数据图表展现.jpg 跳至 [1] code=26754#44745" rel="nofollow"> [2] ...

  6. .net 超长URL请求返回404错误-解决方法

    <system.webServer> <security> <requestFiltering> <requestLimits maxQueryString= ...

  7. url请求返回结果测试工具(CURL)

    官网:http://curl.haxx.se/download.html 具体用法用时百度 或  到时再补充

  8. springmvc返回json字符串中文乱码问题

    问题: 后台代码如下: @RequestMapping("menuTreeAjax") @ResponseBody /** * 根据parentMenuId获取菜单的树结构 * @ ...

  9. Asp.net mvc返回Xml结果,扩展Controller实现XmlResult以返回XML格式数据

    我们都知道Asp.net MVC自带的Action可以有多种类型,比如ActionResult,ContentResult,JsonResult……,但是很遗憾没有支持直接返回XML的XmlResul ...

随机推荐

  1. Linux操作系统桌面环境GNOME和KDE的切换

    一.设置GNOME或者KDE为默认的启动桌面环境 方法1:修改/etc/sysconfig/desktop,根据需要将“DESKTOP”后面的内容改为KDE或GNOME. 方法2:在当前用户目录下建立 ...

  2. java设计模式 -------- 创建模式 之 抽象工厂模式

    本文是自己学习所做笔记,欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020 工厂方法模式和抽象工厂模式不好区分清楚: 工厂方法模式特点: 1. 一个抽象产品 ...

  3. 从‘void*’到‘int’的转换损失精度

    在CentOS6.2 64位下编译一下代码,不通过,提示 ./11_2.cpp: In function ‘int main(int, char**)’:./11_2.cpp:28: 错误:从‘voi ...

  4. struts2的validate在使用过程中的一个问题

    在项目中有一个新增客户信息的的功能:  1.在进入加入页面:add.jsp页面之前,要调用一个add_init.do来获取省份信息列表以供在add.jsp进行选择. 2.add页面填写完毕以后.提交给 ...

  5. 椭圆曲线ECC基本概念

    椭圆曲线的曲线方程是以下形式的三次方程: y2+axy+by=x3+cx2+dx+e a,b,c,d,e是满足某些简单条件的实数.定义中包含一个称为无穷点的元素,记为O 如果其上的3个点位于同一直线上 ...

  6. 如何给Eclipse添加一个JDK或JRE

    第一:  第二:  第三:  第四: 

  7. 嵌入式开发之davinci--- 8148/8168/8127 中的音频alsa 采集

    1.snd_pcm_open,打开句柄. 2.配置参数,可能用到的接口:snd_pcm_hw_params_alloca.snd_pcm_hw_params_any.snd_pcm_hw_params ...

  8. poj 3683(2-sat+输出一组可行解)

    题目链接:http://poj.org/problem?id=3683 思路:对于每个结婚仪式,只有在开始或结束时进行这两种选择,我们可以定义xi为真当且仅当在开始时进行.于是我们可以通过时间先后确定 ...

  9. HDU1712ACboy needs your help【分组背包】

    ACboy needs your help Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  10. Python:简述 线程、进程和协程

    Python线程 定义:Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元. #!/usr/bin/env python # -*- coding:utf-8 -*- impor ...