`
deng131
  • 浏览: 662959 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

URL格式规范

阅读更多
转自:http://nosound.my.gsdn.net/2004/12/09/6276/

先记录下,以便以后使用。

一、格式说明

“|” 表示隔开的两部分只能出现其中一个,方括号[]括起来的表示可选,文字由双引号””括起来,以n*开头表示至少n个或更多的,n的缺省值为0。
二、总体格式

genericurl     = scheme “:” schemepart

scheme         = 1*[ lowalpha | digit | “+” | “-” | “.” ]
schemepart     = *xchar | ip-schemepart

ip-schemepart  = “//” login [ “/” urlpath ]
login          = [ user [ “:” password ] “@” ] hostport
hostport       = host [ “:” port ]
host           = hostname | hostnumber
hostname       = *[ domainlabel “.” ] toplabel
domainlabel    = alphadigit | alphadigit *[ alphadigit | “-” ] alphadigit
toplabel       = alpha | alpha *[ alphadigit | “-” ] alphadigit
alphadigit     = alpha | digit
hostnumber     = digits “.” digits “.” digits “.” digits
port           = digits
user           = *[ uchar | “;” | “?” | “&” | “=” ]
password       = *[ uchar | “;” | “?” | “&” | “=” ]
urlpath        = *xchar    ; depends on protocol see section 3.1

三、常见scheme

; FTP (参见RFC959)
ftpurl         = “ftp://” login [ “/” fpath [ “;type=” ftptype ]]
fpath          = fsegment *[ “/” fsegment ]
fsegment       = *[ uchar | “?” | “:” | “@” | “&” | “=” ]
ftptype        = “A” | “I” | “D” | “a” | “i” | “d”

; FILE
fileurl        = “file://” [ host | “localhost” ] “/” fpath

; HTTP
httpurl        = “http://” hostport [ “/” hpath [ “?” search ]]
hpath          = hsegment *[ “/” hsegment ]
hsegment       = *[ uchar | “;” | “:” | “@” | “&” | “=” ]
search         = *[ uchar | “;” | “:” | “@” | “&” | “=” ]

; GOPHER (参见RFC1436)
gopherurl      = “gopher://” hostport [ / [ gtype [ selector
                 [ “%09″ search [ “%09″ gopher+_string ] ] ] ] ]
gtype          = xchar
selector       = *xchar
gopher+_string = *xchar

; MAILTO (参见 RFC822)

mailtourl      = “mailto:” encoded822addr
encoded822addr = 1*xchar               ; further defined in RFC822

; NEWS (参见 RFC1036)
newsurl        = “news:” grouppart
grouppart      = “*” | group | article
group          = alpha *[ alpha | digit | “-” | “.” | “+” | “_” ]
article        = 1*[ uchar | “;” | “/” | “?” | “:” | “&” | “=” ] “@” host

; NNTP (参见RFC977)
nntpurl        = “nntp://” hostport “/” group [ “/” digits ]

; TELNET
telneturl      = “telnet://” login [ “/” ]

; WAIS (参见 RFC1625)
waisurl        = waisdatabase | waisindex | waisdoc
waisdatabase   = “wais://” hostport “/” database
waisindex      = “wais://” hostport “/” database “?” search
waisdoc        = “wais://” hostport “/” database “/” wtype “/” wpath
database       = *uchar
wtype          = *uchar
wpath          = *uchar

; PROSPERO
prosperourl    = “prospero://” hostport “/” ppath *[ fieldspec ]
ppath          = psegment *[ “/” psegment ]
psegment       = *[ uchar | “?” | “:” | “@” | “&” | “=” ]
fieldspec      = “;” fieldname “=” fieldvalue
fieldname      = *[ uchar | “?” | “:” | “@” | “&” ]
fieldvalue     = *[ uchar | “?” | “:” | “@” | “&” ]

四、杂类

lowalpha       = “a” | “b” | “c” | “d” | “e” | “f” | “g” | “h” |
                 “i” | “j” | “k” | “l” | “m” | “n” | “o” | “p” |
                 “q” | “r” | “s” | “t” | “u” | “v” | “w” | “x” |
                 “y” | “z”
hialpha        = “A” | “B” | “C” | “D” | “E” | “F” | “G” | “H” | “I” |
                 “J” | “K” | “L” | “M” | “N” | “O” | “P” | “Q” | “R” |
                 “S” | “T” | “U” | “V” | “W” | “X” | “Y” | “Z”

alpha          = lowalpha | hialpha
digit          = “0″ | “1″ | “2″ | “3″ | “4″ | “5″ | “6″ | “7″ |
                 “8″ | “9″
safe           = “$” | “-” | “_” | “.” | “+”
extra          = “!” | “*” | “‘” | “(” | “)” | “,”
national       = “{” | “}” | “|” | “\” | “^” | “~” | “[” | “]” | “`”
punctuation    = “<” | “>” | “#” | “%” | <”>

reserved       = “;” | “/” | “?” | “:” | “@” | “&” | “=”
hex            = digit | “A” | “B” | “C” | “D” | “E” | “F” |
                 “a” | “b” | “c” | “d” | “e” | “f”
escape         = “%” hex hex

unreserved     = alpha | digit | safe | extra
uchar          = unreserved | escape
xchar          = unreserved | reserved | escape
digits         = 1*digit
分享到:
评论

相关推荐

    tomcat8get请求url格式问题

    原因:由于tomcat的新版本增加了一个新特性,就是严格按照 RFC 3986规范进行访问解析,而 RFC 3986规范定义了Url中只允许包含英文字母(a-zA-Z)、数字(0-9)、-_.~4个特殊字符以及所有保留字符(RFC3986中指定了...

    Java EE 编码规范.docx

    四、代码格式规范 5 五、其他规范 6 六、工程特有命名规范 6 1、持久层 6 2、服务层 6 3、MVC 层 7 4、Spring 配置文件 7 5、JSP 文件 7 七、应用命名总结 7 1、 java类 8 2、 字段 8 3、 方法 8 4、 变量 9 5、 Xml...

    ASP.NET的UrlRewrite URL重写伪静态实例

    结构以上事实,然后伪静态技术产生了,规范的说就是URL重写技术,他对于ASPX格式支持最好,当然也可以重写HTML格式的文件,但这需要IIS的设置,相对比来说,ASPX格式的更方便,本站就是采用了该URL重写技术,这个...

    阿里巴巴java开发规范

    阿里巴巴java开发规范手册详细规范了java以及mysql数据库创建时的具体要求。分为编程规约、异常处理、Mysql规约、工程规约、安全规约等。编程规约包含命名规约、常量定义、格式规约、oop规约、集合处理、并发处理、...

    php开发编码规范,以整理文档格式直接使用

    为了更好的提高开发的工作效率,保证开发的有效...本规范包含了PHP开发时程序编码中代码缩进规则、控制结构、函数调用、函数定义、注释、包含代码、PHP标记、文件头的注释块、CVS标记、URL样例、常量命名等方面的规则。

    provenance-log-specifications:真实数据源日志格式,URN和URL的规范

    该项目管理真实数据源日志及其相关的URN,URL和协议的一组规范。 它是通过开发的来指定的,该是受和启发。 这些标准从 , , 和先前工作中获得了很多启发。 这是多年学习和研究的高潮,由于创建和发展了自主权身份...

    java命名规范 开发规范

    统一采用全路径请求,URL格式: 1&gt; basePath/web/moduleName/*_ *.action {1}  EntityName,{2}  ActionMethodName 2&gt; basePath/web/moduleName/gotoXxx.action (无需调用Service,直接跳转) 包括jQuery的Ajax...

    url-lang-id:检测URL中的常见语言模式

    每个域的规则规范。 检测ISO 639语言代码:2或3个字母代码,language_COUNTRY_Variant代码。 支持带有映射的自定义或本地化的语言名称。 语言,查询字符串参数和其他url模式匹配顺序可以优先。 如果可能,请提取...

    同花顺HTTP行情接口规范 PDF

    同花顺HTTP行情接口规范 PDF 2012/03/10 21:29:27 空白) 1、接口采用 HTTP协议和外围程序通讯 2、接口处理 POST方法提交的请求,返回 XML格式的数据 3、请求 URL:http://IP:PORT/hexin

    thinkphp5 URL和路由的功能详解与实例

    ThinkPHP采用单一入口模式访问应用,对应用的所有请求都定向到应用的入口文件,系统会从URL参数中解析当前请求的模块、控制器和操作,下面是一个标准的URL访问格式: http://domainName/index.php/模块/控制器/操作...

    课程设计报告-基于Java的网页浏览器.doc

    网页浏览器主要通过HTTP协议与网页服务器交互并获取网页,这些网页由URL指定,文件格式通常为HTML,并由MIME在HTTP协议中...HTTP内容类型和URL协议规范允许网页设计者在网页中嵌入图像、动画、视频、声音、流媒体等。

    Javashop开发规范V2.2

    Javashop开发规范V2.2 版本 说明 提交人 V1.0 初稿 定义了包名、异常、事务、和路径的规范 王峰 V2.0 1. 重新整理了命名规范 2. 增加常用命词对照表 王峰 V2.1 1.增加数据库操作的说明 2.增加常用方法介绍 王峰 V...

    format-catalog:Twine故事格式的JSON格式目录

    字段旨在与该字段的故事格式的值匹配,尽管在某些情况下,数据已被规范化(出于常规性)或被省略(出于懒惰),例如,许可字段。 我没有包括url字段,因为我将Web位置细分为更有用的数据,但是可以重新引入。 我...

    使用爬虫获取bilibili弹幕, 支持protobuf格式的全弹幕抓取.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续...然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

    前端助手FeHelper插件

    当web前端程序与后台进行数据交互的时候使用URL编码肯定是必不可少的了,但是我们往往需要预先知道这款字符编码以后的情况,以为与后台开发人员一同提前作出相应处理或对字符发送期间产生的问题进行排查。...

    定义一个json格式的爬虫规则,Nodejs按照该规则爬取所需要的内容.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续...然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

    语雀爬虫 可以保存整个语雀知识库为Markdown格式 (包含完整目录结构和索引).zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续...然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

    URL canonical-crx插件

    url规范扩展 增强功能将当前选项卡URL和标题复制到剪贴板。 如果内容包含属性,则使用归一化URL。 这允许您复制不包括会话ID和广告标识符等的内容本身URL。 您还可以通过单击文本,Markdown和HTML按钮更改要复制的...

    帮助博客园作者下载自己的随笔文章原稿,包括草稿,md原格式,保留分类。markdown 源码 爬虫 下载器.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续...然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

    能够爬取云顶之弈棋子、装备、海克斯、技能图片和数据,并处理成方便使用格式(json)的爬虫工具。.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续...然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

Global site tag (gtag.js) - Google Analytics