在HTML网页中巧用URL
http://www.cnbruce.com/blog/showlog.asp?cat_id=5&log_id=657
首先,先放出一个地址给大家测试
http://cnbruce.com/test/htmlpro/?name=cnbruce&email=cnbruce@126.com
1,时下流行的(可能是吧,因为最近问的人比较多)就是没有任何文件名的URL地址。比如htmlpro/?其实这和服务器设置的默认文件名有关,比如index.htm,index.html,index.asp等等,不信你试试我朋友的一个(asp的)。
http://www.windsn.com/blog/?viewType=byCate&cateID=3
2,本处的文件为index.html,同时后面带有参数,页面效果如同ASP一般提取信息内容。
如下是转载的文章(作者刘筱)可以说明些东西
经常上网的朋友肯定对“ http://host/***.asp?arg1=*&arg2=* ”之类的URL(即网址)不会陌生。这类网址的作用就是通过在URL后面附加信息内容来传递相关信息给远程Web服务器,并在Web服务器进行适当处理后将结果返回给客户端,从而达到网页交互的目的,并实现网页内容动态化。(注意: URL与信息内容之间通过“?”连接,各内容字段之间则通过字符“&”来分隔,每个字段的名称/取值表示为“名称=取值”形式。)但通过这种方式实现的动态网页均需要服务器端编程技术的支持,最近笔者在制作个人网站时利用浏览器支持的DHTML和XML技术,经过不断尝试,在免费主页空间通过这种方式实现动态网页。
一、原理分析
当浏览器通过http://remotehost/program?querystring 这种方式请求Web服务器时,Web服务器将对请求地址的URL进行解析,把“?”后面的querystring字符串存入服务器特定环境变量,然后调用服务器端编程执行环境,如ASP(Activex Server Page)等对请求program文件进行处理。
具体调用何种编程执行环境依据服务器的设置而定,如果请求的文档是asp类型的文件,则调用ASP,如是aspx类型文件,则调用ASP.NET。在program文件中则可以通过一定方法来读取环境变量,如asp文件就可以通过Reques.Querystring数据集合来读取环境变量。编程执行环境处理完毕后将结果返回给Web服务器,Web服务器再将结果返回给浏览器,从而达到网页内容动态化的目的。
通过上述分析我们可以知道,如果使用http://remotehost/*.htm?querystring 方式向Web服务器发送请求时,Web服务器将向浏览器直接返回请求的HTML网页。这时我们就可以在网页中利用Location.href属性获得附加了信息内容的URL串,经过适当处理后就可以得到所附加的信息内容字段名称及其取值,再通过浏览器支持的DHTML特性进行处理,就可以实现网页内容动态化,从而在不支持服务器端编程技术的免费主页空间上达到网页交互的目的。
我们也可以看出,通过这种方式达到网页动态交互的目的即使是在浏览器中实现也仍然摆脱不了Web服务器的支持,否则浏览器将把“?querystring”作为请求的URL的一部分,从而出现网页不能查看的错误提示。
二、应用示例
---下面给出了一个带有详细注释的具体示例源代码。注意: querystring.js是一个实用程序,它可以在网页中直接引用,然后在网页中使用Request[“名称”]即可获取用户输入的有关信息内容。
1.querystring.js源代码
function QueryString() {//构造参数对象并初始化 var name,value,i; var str=location.href;//获得浏览器地址栏URL串 var num=str.indexOf("?") str=str.substr(num+1);//截取“?”后面的参数串 var arrtmp=str.split("&");//将各参数分离形成参数数组 for(i=0;i < arrtmp.length;i++){ num=arrtmp[i].indexOf("="); if(num>0){ name=arrtmp[i].substring(0,num);//取得参数名称 value=arrtmp[i].substr(num+1);//取得参数值 this[name]=value;//定义对象属性并初始化 } } } var Request=new QueryString();//使用new运算符创建参数对象实例 |
2.Sample.htm源代码
<Html> <Head> <Meta http-equiv="Content-Type"content="text/html; charset=gb2312" > <Title>示例</Title> <script src="Querystring.js"></script> </Head > <Body> <script> var newElement=document.createElement("div");//创建div对象 var str="<u>"+Request["name"]+"</u>,欢迎光临!<br>您的E-mail是:<u>"+Request["email"]+"</u>";//利用实例["字段名称"]获取参数内容 newElement.innerHTML=str; document.body.appendChild(newElement);//向文档添加div对象 </script> </Body> </Html> |
如果对该示例应用DHTML与XML技术进行扩充,将会取得不可思议的效果。该作者就是通过这种途径在只支持纯HTML的主页空间建立了一个相当不错的动态图片查看器
所以,各位,实践下咯。
在HTML网页中巧用URL相关推荐
- php正则获取li,用正则表达式抓取网页中的ul 和 li标签中最终的值!
获取你要抓取的页面 const string URL = "http://www.hn3ddf.gov.cn/price/GetList.html?pageno=1"; ...
- php抓取标签内的内容,php抓取网页中的内容
以下就是几种常用的用php抓取网页中的内容的方法. 1.file_get_contents PHP代码 代码如下:>>>>>>>>>>> ...
- C# 网络编程之webBrowser获取网页url和下载网页中图片
该文章主要是通过C#网络编程的webBrowser获取网页中的url并简单的尝试下载网页中的图片,主要是为以后网络开发的基础学习.其中主要的通过应用程序结合网页知识.正则表达式实现浏览.获取url.下 ...
- html没有内容怎么爬,Url没有在网页中返回正确的html(对于我的Java爬虫)
我想从网页上下载一些图像,为此我正在编写爬网程序.我测试了这个页面的几个抓取工具,但没有工作,因为我想.Url没有在网页中返回正确的html(对于我的Java爬虫) 第一步,我收集了770+相机型号( ...
- html抓取网址某链接,URL 筛选小工具 提取网页中的链接地址
http://blog.360dseo.com/html/826.html 作者: 不详 发布时间:2014-4-23 16:46:19 这个VBS是用来将一个本地网页中的URL筛选出来并保存在新的网 ...
- html中url表示方法,HTML网页中的URL表示方式介绍
在HTML中很多用户们对于URL表示方式都不了解,那么今天爱站小编就将为大家分享HTML网页中的URL表示方式介绍,希望对大家的学习有所帮助. 在HTML中,常见的URL有多种表示方式: 相对URL: ...
- 使用Data URL将图片嵌入到网页中
早些时候,使用IE6浏览器,网页可以另存为mht,如果网页包含图片,那么图片也会存储到mht中. mht是微软提供的一种聚合HTML文档,它的本质其实是一个文本文件,那么我们也许会好奇,它的图片存储到 ...
- go语言并发下载电影和视频,根据m3u8索引url下载视频.下载网页中的图片,可以从当前页向下搜索层数.
一,根据URL的m3u8索引,下载视频文件. 二,下载网页中的图片. 为了家里小朋友,要下载一个视频,放在电视上看. 所以利用一点时间,写了这个简单下载程序.如果视频有加密,会对其解密. 最近下点图片 ...
- 通过JS在网页中隐藏URL
js文件比如test.js中写入 var url="https://www.baidu.com/"; var time="0.006511926651001"; ...
最新文章
- Codeforces Round #599A~D题解
- CSS3秘笈第三版涵盖HTML5学习笔记13~17章
- button 元素的css3旋转动画
- 【入门基础】写给小白看的入门级 Java 基本语法
- java typereference_记录一下jackson中TypeReference的使用
- python中import文件_Python导入其他文件中的.py文件 即模块
- Tomcat学习总结(7)——Tomcat与Jetty比较
- C++基础::为什么不能cout一个string?
- ActiveMQ持久化方式
- golang debug 配置_新鲜出炉的golang日志库
- hibernate java.util.date 精度_hibernate中java.util.Date类型映射
- cad修改快捷键_怎么编辑CAD快捷键?
- python微信聊天机器人_用python实现微信聊天机器人
- 手机模拟器自带root_VMOS Pro Android 手机上的模拟器 (手机版虚拟机)
- mysql 浏览量统计_统计网站的每日访问量
- 微信支付元转分的正确姿势
- 计算机教室突发事件处理,课堂突发事件处理
- 怎么用java程序控制步进电机_用单片机按键控制步进电机转动的程序怎么写
- Y C夏季Demo Day最有趣的8家创业公司
- 苹果ppt_惊艳!苹果发布会最爱用的PPT动画,居然这么简单
热门文章
- bartender一行打印两个二次开发_C++ 智能指针和二叉树:图解层序遍历和逐层打印二叉树...
- MySQL面试题 | 附答案解析(十五)
- 力扣(LeetCode)刷题,简单题(第23期)
- P1160 队列安排 链表
- python 爬取svg数据_python处理svg数据
- Python中if__name__==__main__:该如何理解
- 【一个诡异的问题】用饿了么的自定义主题之后发现表格顶部的复选框checkbox错位了
- linux命令行中curl和wget自动解压功能对比
- C4D和Redshift:2D矢量到三维渲染 Cinema 4D and Redshift: 2D vector to 3D render
- Python训练营2021:构建8个真实世界的Python项目