zoukankan      html  css  js  c++  java
  • XMLHttpRequest+WebForm模式(接口IHttpHandler)实现ajax

    首先引入ajax.js文件 创建xmlhttpRequest对象

    Code


    //HTTP 处理程序
       IHttpHandler 接口:定义 ASP.NET 为使用自定义 HTTP 处理程序同步处理 HTTP Web 请求而实现的协定。
    如果您的处理程序将访问会话状态值,它必须实现 IRequiresSessionState 接口(不包含任何方法的标记接口)。 
    创建自定义 HTTP 处理程序

    若要创建自定义 HTTP 处理程序,请创建实现 IHttpHandler 接口的类来创建一个同步处理程序。或者,可以实现 IHttpAsyncHandler 来创建一个异步处理程序。两种处理程序接口都要求您实现 IsReusable 属性和 ProcessRequest 方法。 IsReusable 属性指定 IHttpHandlerFactory 对象(实际调用适当处理程序的对象)是否可以将处理程序放置在池中,并且重新使用它以提高性能。如果处理程序不能放在池中,则在每次需要处理程序时工厂都必须创建处理程序的新实例。

    ProcessRequest 方法负责处理单个 HTTP 请求。在此方法中,将编写生成处理程序输出的代码。

    HTTP 处理程序有权访问应用程序上下文。其中包括请求用户的标识(如果已知)、应用程序状态和会话信息。当请求 HTTP 处理程序时,ASP.NET 将调用相应处理程序的 ProcessRequest 方法。您在处理程序的 ProcessRequest 方法中编写的代码将创建一个响应,此响应随后发送回请求浏览器。

    Code

    前台页面:

     

    Code

    或者通过客户端向另一个页面传递参数,由该页面处理数据,把结果输出到http流中 
     apsx.cs页面
       public partial class AjaxForm : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    string name = Request.QueryString["name"];
                    Response.Write(name.ToUpper());
                    Response.Flush();
                    Response.End();
                }
            }
        }

    //xmlhttpRequest对象
       //发起异步请求
    function sendRequest(){
        newXMLHttpRequest();
        var url="AjaxForm.aspx?name="+document.getElementById("txtName").value;
       xmlHttp.open("GET",url,true);
        xmlHttp.onreadystatechange=onSuccessCallBack;
        xmlHttp.send(null);
    }

  • 相关阅读:
    当服务器存在多个与公网访问的网卡(对应不同的公网IP地址)时,如何使用指定的网卡进行HTTP请求
    svn 迁移至 git
    在 sql server 中批量删除表
    从高版本的 SQL Server 向低版本的 SQL Server 转移数据
    MYSQL 复制整个数据库
    在 VS Code 中遇到的一些问题
    把TEMPDB放到内存里
    关于在 ASP.NET 的 Global.asax 中 Application_Error 方法内,设置跳转到自定义错误页无效的问题
    重新安装和更新所有的 nuget包
    高版本 MySQL 导出的脚本到低版本 MySQL 中执行时报错
  • 原文地址:https://www.cnblogs.com/hubcarl/p/1567251.html
Copyright © 2011-2022 走看看