首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网络安全-> 病毒防治
XMLHTTP开发Web 客户端-.NET教程,Web Service开发
作者:网友供稿 点击:66
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
关键字:xmlhttp,xml,web客户端,c#,asp

  所有的知识都不是最新的知识点,关键是达到自己的设计目的。

  某些时候,我们可能需要客户端做点什么以简化复杂的脚本处理,比如加密之类的等。

  不管用什么样的客户端,首先我们应该确定我们遵守的协议,或者说如何设置或获取我的数据。这里,我们的服务器端为iis5的asp程序,所以我们首先遵守的是http协议,然后在http协议上传输xml。用xml是因为更容易统一我们的数据格式,有xml这种思想我们为什么不用呢。

  恰好xmlhttp,就是基于http传输xml的很方便的类。

  首先简要说一下xmlhttp的两个函数:

  open(bstrmethod, bstrurl, varasync, bstruser, bstrpassword)

  按照bstrmethod指定的http方法(如post,get等)打开bstrurl指定的连接,其中varasync为是否异步,bstruser, bstrpassword为访问bstrurl时需要用户及密码。

  send(varbody)

  发送的数据,或者应该说是提交的数据。

   具体可以查看相关的msxml sdk。

   以下利用c#实现xml的传输,假定反馈的xml格式为"<response><error id=\"0\">成功</error></response>"

private msxml2.domdocument40class zxml;   // 处理服务器反馈结果
private int zlasterrorcode;

private string zlasterrordescription;

private const int oksuccess=0;

//以err打头的都是一些常量

private int executecmd(string scmd, string method, string ext)

{

    //根据scmd计算出surl的代码省略。

  //……

 try
      {
        //messagebox.show(surl);
        zxmlhttp.open(method, surl, false,"","");
        zxmlhttp.send(ext);
      }
      finally
      {
        // 检测设置最后的错误代码和描述

        // 检查zxmlhttp的状态
        if(zxmlhttp.status / 100 ==2)   //200, 201, 202, 203, 204, 205, 206
        {
          // 成功
          //messagebox.show(zxmlhttp.responsetext);
          zxml.loadxml(zxmlhttp.responsetext);
         
          if(zxml.parseerror.errorcode!=0)
          {
            zlasterrorcode = errprotocol;
            //zlasterrordescription = "解析服务器反馈结果时出现错误,协议版本可能不正确";
            zlasterrordescription = zxml.parseerror.reason;   //本行应该仅作调试时使用,发布时应该使用上一行
            // messagebox.show(zxmlhttp.responsetext);
          }
          else
          {
            s = getxmlnodevalue(zxml,"/response/error/@id");

            if(s.length==0)
            {
              zlasterrorcode = oksuccess;
            }
            else
            {
              try
              {
                zlasterrorcode = convert.toint32(s);
              }
              catch
              {
                zlasterrorcode = errunknown;
              }
            }

            zlasterrordescription = getxmlnodevalue(zxml, "/response/error");
            if(zlasterrordescription.length==0)
            {
              if(zlasterrorcode==oksuccess)
              {
                zlasterrordescription = "执行成功";
              }
              else
              {
                zlasterrordescription = "未知错误信息";
              }
            }
          }
        }
        else
        {
          // 服务器出错
          zlasterrorcode = errservice;
          zlasterrordescription = zxmlhttp.statustext;
        }
      }

  return zlasterrorcode;
}

  然后是服务器端的test.asp

<% language=vbscript %>

<%

dim oxml

set oxml = server.createobject("msxml2.domdocument.4.0")
oxml.async = false
oxml.resolveexternals = false

 oxml.load request

然后对提交的xml数据进行处理

set oxml = nothing

最后是反馈处理结果
response.contenttype = "text/xml"   由于反馈的是xml不可缺!!
response.charset= "gb2312"   反馈的内容的编码,不可缺!!否则会出现非法字符不能被客户端解析response.write "<?xml version=""1.0"" encoding=""gb2312"" ?>" & vbcrlf
response.write "<response><version>1.0.0.0</version><test>中国人民万岁</test></response>" & vbcrlf
%>

  最后要说的是传输的xml数据格式,可以说就是你自己定义的协议了,以上只不过是抛砖引玉而已。努力,一切在你自己。



文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·常用ASCII 码对照表-ASP教程,ASP基础
·使用jsp实现word、excel格式报表打印-JSP教程,Jsp/Servlet
·vb.net中的数据库连接-.NET教程,数据库应用
·细说Java之util类-JSP教程,Java技巧及代码
·揪出系统中秘密隐藏的木马
·利用 JAXB 通过 XML 模式生成 XML 文档-.NET教程,XML应用
·asp.net2.0 站点登录,导航与权限管理-.NET教程,.NET Framework
·一个将阿拉伯数字转换成中文大写的最简单算法-.NET教程,数据库应用
·65w双路输出1/4砖型模块电源的介绍
·拥有xp风格的界面-.NET教程,Windows开发
最新文章
·制作一个百毒不侵的系统_病毒防治教程
·教你认识网页中五种隐形的危险病毒_病毒防治教程
·用excel剿灭dll木马_病毒防治教程
·15实用免费安全软件大搜罗_病毒防治教程
·如何让u盘做到100%预防病毒_病毒防治教程
·利用windows系统自带命令手工搞定病毒_病毒防治教程
·windows vista系统下的rootkit攻防_病毒防治教程
·六招关闭windows xp自动播放防止病毒_病毒防治教程
·巧设江民2007 彻底防范msn相册病毒_病毒防治教程
·加壳与脱壳 杀毒软件新技术的意义_病毒防治教程
相关主题
  • xmlhttp对象封装技术_ajax教程
  • xmlhttp xmldoc 与 c#中dataset的结合 实现ajax简单示例_ajax教程
  • xmlhttp获取web访问头信息和网页代码_asp技巧
  • XMLHTTP获取web访问头信息和网页代码-ASP教程,ASP技巧
  • XMLHTTP Get HTML页面时的中文乱码之完全客户端Script解决方案-ASP教程,ASP技巧
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭