asp.net 8 Request,Response,Server
Request成员:
1.Request.UrlReferrer 获取请求的来源,可以防盗链
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
2.Request.UserHostAddress 获取访问者的IP地址
Response.Write(Request.UserHostAddress.ToString());
3.Request.Cookies[""];//读取Cookies
Response.Cookies[""];//将Cookies写回浏览器
4.Request.MapPath("");将虚拟路径转换为磁盘上的物理路径
Response成员:
响应的缓冲输出:为了提高服务器的性能,ASP.NET向浏览器Write的时候默认并不会
每Write一次都会立即输出到浏览器,而是会缓存数据,到合适的时机或者响应结束才会将
缓冲区中的数据一起发送到浏览器。
1.Response.Buffer; 这个属性用来控制是否采用响应缓冲,默认是true!
Response.BufferOutput; --Buffer内部调用的就是BufferOutput
Response.Buffer = false;//设置了没有响应缓冲区,碰到一次Response.Write就输出一次
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
2.Response.Flush() 将缓冲区中的数据发送给浏览器。这在需要将Write出来的内容立即输出到浏览器的场合非常适用。
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Flush();//将前两条Response.Write立即向浏览器输出
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
3.Response.Clear() 清空缓冲区的数据。这样在缓冲区中的没有发送到浏览器端的数据被清空,不会被发送到浏览器。
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Clear();//清空缓冲区的数据,将上面两条Response.write清除!
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
4.Response.ContentEncoding 输出流的编码
5.Response.ContentType 输出流的内容类型
6.Response.Cookies 返回给浏览器的Cookie的集合,可以通过它设置Cookie
7.Response.OutputStream 输出流,在输出图片,excel文件等非文本内容的时候要使用它
8.Response.End() 终止响应,将之前缓存中的数据发给浏览器,End()之后的代码不会被继续执行,End方法里调用了Flush()方法。
在终止一些非法请求的时候,比如盗链等可以用End()立即终止请求
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.End();//后面的代码不会被执行
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
9.Response.Redirect() 重定向浏览器到新的网址。(即可以重定向到站外网址也可以重定向到站内地址)。Redirect是向浏览器发回302重定向(还有一个Location告诉浏览器要重定向到哪个页面),是通知浏览器“请重新访问url这个网址”,这个过程经历了服务器通知浏览器“请重新访问url这个网址”和浏览器接到命令访问新网址的过程。
10.Response.SetCookie(HttpCookie cookie) 向输出流中更新写到浏览器中的Cookie,如果Cookie存在就更新,不存在就增加。
11.Response.Write() 向浏览器输出内容。
Server对象
Server属性是HttpServerUtility的一个实例,它提供对服务器上的方法和属性的访问
1.Server.MapPath 取得文件的物理路径
2.Server.Execute(); Server.Transfer() 执行另一个页面的脚本
Server.Execute()类似于iframe(iframe不利于SEO优化,因为蜘蛛爬虫不识别iframe,考虑SEO优化,使用Server.Execute!)
Server.Transfer() 服务端的跳转
**白帽SEO......黑帽SEO......
**注释的优化,采用服务端的注释,html的注释会被传输~~~
3.Server.HtmlDecode();Server.HtmlEncode(); 将稳步编码成可以在浏览器中可正确浏览的合适
Server.HtmlEncode():
<%=Server.HtmlEncode("<a href='#'>111</a>") %>
<a href='#'>111</a>
Server.HtmlDecode():
<%=Server.HtmlDecode("<a href='#'>111</a>") %>
页面显示一个111的超链接
4.Server.UrlDecode;Server.UrlEncode Url编码和解码
*** 通过Url地址传参如果出现乱码问题,先用 Server.UrlEncode编码一下,然后接受参数的时候再 Server.UrlDecode解码~~
asp.net 8 Request,Response,Server的更多相关文章
- ASP.NET之Request和Response对象
经过了牛腩新闻公布系统和html的学习对B/S开发的流程有了些理解.前面尽管用到了非常多知识.但对制作网页仅仅能说知其然.当学到asp.net视频中的解说才干够说開始知其所以然了. 今天来说说clie ...
- Server,Servlet,ServletConfig,ServletContext,Session,Request,Response
Server流程 解析URL->找到应用->找到Servlet->实例化Servlet->调用init->调用service->返回响应->调用destroy ...
- response.sendRedirect(url)与request.getRequestDispatcher(url).forward(request,response)的区别
response.sendRedirect(url)跳转到指定的URL地址,产生一个新的request,所以要传递参数只有在url后加参数,如: url?id=1.request.getRequest ...
- ASP入门(十三)-Server对象
Server 对象用于处理服务器上的一些特殊任务,例如,创建组件实例.获取文件路径.执行ASP脚本文件等. Server 对象是体现 ASP 强大功能的一个对象,之前介绍的对象都是针对获取.请求以及简 ...
- ASP调用存储过程访问SQL Server
ASP调用存储过程访问SQL Server 2011-02-15 10:22:57 标签:asp 数据库 sQL 存储过程 Server ASP和存储过程(Stored Procedures)的文章 ...
- track message forwards, avoiding request loops, and identifying the protocol capabilities of all senders along the request/response chain
https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html The TRACE method is used to invoke a remote, ...
- ZeroMQ之Request/Response (Java)
自己最开始是在cloud foundry中接触过消息服务器(nats),或者说是消息中间件,也算是初步知道了一个消息服务器对于分布式的网络系统的重要性,后来自己也曾想过在一些项目中使用它,尤其是在一些 ...
- ASP.NET中的Response
Response.BufferOutput=true.false 是否设置缓存 Response.Write("") 输出字符串 Response.IsClientConne ...
- Asp.net中Request.Url的各个属性对应的意义介绍
Asp.net中Request.Url的各个属性对应的意义介绍 本文转载自 http://www.jb51.net/article/30254.htm 网络上关于Request.Url的说明已经很多也 ...
随机推荐
- mysql 创建++删除 数据表
创建表:CREATE TABLE IF NOT EXISTS `runoob_tbl`( `runoob_id` INT UNSIGNED AUTO_INCREMENT, `runoob_title` ...
- Android省电和提高效率
一.Android省电开发之性能优化 电量优化 Android应用开发中的网络.定位.传感器等都是比较耗电的特性,我们应该正确使用API来有效降低应用的耗电量. 1.BroadcastReceiver ...
- js函数节流和防抖的理解与实现
一:函数防抖1.理解:触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间2.思路:每次触发事件时都取消之前的延时调用方法 3.实现: function debounce ...
- RabbitMQ学习之:(五)Exchange Type (转贴+我的评论)
From: http://lostechies.com/derekgreer/2012/03/28/rabbitmq-for-windows-exchange-types/ RabbitMQ for ...
- 前端需要掌握的Babel知识
Babel 是怎么工作的 Babel 是一个 JavaScript 编译器. 做与不做 注意很重要的一点就是,Babel 只是转译新标准引入的语法,比如: 箭头函数 let / const 解构 哪些 ...
- MySQLdb User's Guide
MySQLdb MySQLdb-1.2.2 API documentation http://mysql-python.sourceforge.net/MySQLdb-1.2.2/ MySQLdb U ...
- Ubuntu开放指定端口
一般情况下,ubuntu安装好的时候,iptables会被安装上,如果没有的话那就安装上吧 安装 在终端输入 sudo apt-get install iptables 添加规则 在终端输入 ipta ...
- Spring Boot 2.0 集成 Druid 数据源
一.Maven项目依赖 <!-- 开发者工具(热部署 修改classpath下的文件springboot自动重启) --> <dependency> <groupId&g ...
- Go项目实战:打造高并发日志采集系统(五)
前情回顾 前文我们完成了如下功能1 根据配置文件启动多个协程监控日志,并启动协程监听配置文件.2 根据配置文件热更新,动态协调日志监控.3 编写测试代码,向文件中不断写入日志并备份日志,验证系统健壮性 ...
- playbook部署flanneld
定义playbook的主机组 说明: 1.playbook的主机组和ansible的主机组不一样, 2.playbook的主机组文件必须要和playbook文件在同一个目录下否则会报如下错误: [ro ...