asp:get请求写法
写在前面的话
XMLHttpRequest对象的open方法的第一个参数为request-type,取值可以为get或post.本篇介绍get请求.
get请求的目的,主要是为了获取数据.虽然get请求可以传递数据,但传递数据的目的是为了告诉服务器,给我们什么内容.
使用get请求时,参数都是随url进行传递的.
使用get请求时,容易被缓存,需注意缓存问题.
使用get请求时,服务器端请使用Request.QueryString[data]来获取数据.
发现的问题
我们在《完整的Ajax实例》一文中使用的就是get请求,当时遇到以下问题:
- 如何创建在大部分浏览器中都能运行的XMLHttpRequest对象.
- 使用get请求时存在缓存问题
- 中文乱码问题
其中,第一个问题,在《XMLHttpRequest对象》一文中已经解决;
对于第二个问题,产生的原因是:
get请求会每次访问缓存,看其中是否有匹配的url,如果有,则返回缓存中的url,如果没有,则向服务器发出请求.
解决方案:
1.在url上加个动态的变化参数,以求每次访问的是不同的url,这样每次都会向服务器发出新的请求.
对于第三个问题,我们首先来看下产生乱码的原因:
xmlHttp返回的数据默认是uft-8,如果客户端页面是gb2312或其他编码,就会产生乱码
解决方案:
1.若客户端是gb2312,则在输出时,指定输出流编码
2.客户端和服务器端都使用utf-8编码
3.务必使用encodeURIComponent方法对参数进行编码
注意看例子:
例子
页面HTML文件没有变化,变化的知识js代码,代码如下:
<script type="text/javascript">function btn_click() {//创建XMLHttpRequest对象var xmlHttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");//获取值var username = document.getElementById("txt_username").value;var age = document.getElementById("txt_age").value;//配置XMLHttpRequest对象//使用encodeURIComponent方法,对获取的参数进行编码//添加参数,以求每次访问不同的url,以避免缓存问题xmlHttp.open("get", "Get.aspx?username=" + encodeURIComponent(username)+ "&age=" + encodeURIComponent(age) + "&random=" + Math.random());//设置回调函数xmlHttp.onreadystatechange = function () {if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {document.getElementById("result").innerHTML = xmlHttp.responseText;}}//发送请求,因为参数都在URL里,所以此处发送nullxmlHttp.send(null);} </script>
服务器端:
protected void Page_Load(object sender, EventArgs e) {Response.Clear();string username = Request.QueryString["username"];string age = Request.QueryString["age"];Response.Write("姓名:'" + username + "'<br/>年龄:" + age + "<br/>时间:'" + DateTime.Now.ToString() + "'");Response.End(); } //来源于http://www.cnblogs.com/oneword/archive/2011/06/04/2072585.html
转载于:https://www.cnblogs.com/Leon-Jenny/p/5133314.html
asp:get请求写法相关推荐
- ASP.Net请求小周期
另一篇另篇2 ASP.NET请求处理全过程 一个ASP.NET请求过程中,从浏览器中发出一个Web请求 到 这个请求被响应并显示在浏览器中的过程中究竟会发生哪些不同的事件,当我们进入这个事件之旅时,我 ...
- AJAX ASP/PHP 请求实例
AJAX ASP/PHP 请求实例 · Previous Page · Next Page AJAX ...
- 修改 ASP.NET 请求队列的限制
查询 ASP.NET 时,服务的请求将通过 Internet Information Services (IIS) 和 ASP.NET 工作进程之间的管道来传递,并且在该管道内排队.(ASP.NET ...
- ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的?...
一.首先修改文件夹属性: 资源管理器 -> 工具 -> 文件夹选项 -> 查看 -> 把简单文件共享的选择去掉(默认是打钩的) ...
- [译] ASP.NET 生命周期 – ASP.NET 请求生命周期(二)
ASP.NET 请求生命周期 全局应用类也可以用来跟踪每个独立请求的生命周期,包括请求从 ASP.NET 平台传递到 MVC 框架.ASP.NET 框架会创建一个定义在 Global.asax 文件中 ...
- [译] ASP.NET 生命周期 – ASP.NET 请求生命周期(四)
不使用特殊方法来处理请求生命周期事件 HttpApplication 类是全局应用类的基类,定义了可以直接使用的一般 C# 事件.那么使用标准 C# 事件还是特殊方法那就是个人偏好的问题了,如果喜欢, ...
- [译] ASP.NET 生命周期 – ASP.NET 请求生命周期(三)
使用特殊方法处理请求生命周期事件 为了在全局应用类中处理这些事件,我们会创建一个名称以 Application_ 开头,以事件名称结尾的方法,比如 Application_BeginRequest.举 ...
- AJAX学习-----ASP/PHP 请求实例
AJAX 用于创造动态性更强的应用程序. 实例解释 - showHint() 函数 当用户在上面的输入框中键入字符时,会执行函数 "showHint()" .该函数由 " ...
- Asp.net 请求中变量的保存方式
Session: 当前浏览器用户,在浏览器关闭后或者是指定时间后(默认为20分钟)失效 同时根据Session的存储方式,有不同的情况: InProc:该模式Session将会被保存在IIS进程中,如 ...
最新文章
- 我的游戏学习日志46——游戏交互设计(2)
- 2016-8-18晨型养成第三天
- Java中集成极光推送实现给Android提送消息通知(附代码下载)
- 关于dlg和pro的问题
- NodeJS 正则路由匹配
- php有哪些程序结构,PHP常用控制结构
- NOI2016区间bzoj4653(线段树,尺取法,区间离散化)
- li连接mysql代码_php连接mysql基本代码-测试代码
- cte sql_为什么我的CTE这么慢?
- Android HandlerThread 消息循环机制之源代码解析
- 华为手机便签怎样一键扫描图片转化成文字?
- 量子计算机能超越光速,目前有存在超光速吗?人类是否可以超越光速?
- java支付宝提现功能,单笔转账到支付宝账户
- 换个角度看英语语法,会不会简单些?
- Linux Shell
- Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
- python rpa机器人_6个开源工具机器人过程自动化RPA工具
- Hexo 发布博客实现图文并茂
- SpringCloud Alibaba Senta处理分布式事务
- 田东县谋定产业格局-农业大健康·林裕豪:从玉农业携手推动
热门文章
- python什么是接口设计_给女朋友讲什么叫接口设计!
- android开发 修改标题栏背景_Android哆啦A梦调试工具体验
- html input type=quot;filequot;,input[type='file']默认样式
- jooq生成records_Java 14 Records类
- 中心管理cms服务器_如何查找网站使用的CMS,脚本,服务器,技术
- CloudEra Hadoop VMWare单节点环境设置
- java中treemap_Java TreeMap – Java中的TreeMap
- 找工作?最容易遇到的Java面试题
- Java基础篇:如何应用接口?
- Java基础篇:带自变量的构造函数