关于URL和http协议,http消息格式
转自:http://crystal2012.iteye.com/blog/1447845
在WWW(全球资讯网)中想要连结到某个网页,便需要给浏览器一个位址,而URL在此的功能就是告知浏览器某个资源在那个位置,简单来说,通常我们在IE或Netscape浏览器中所输入的网址就是URL的其中一种。
HTTP(Hypertext Transfer Protocol)超文字传输通讯协定是WWW中伺服器和浏览器最主要的沟通方式,而为了能让浏览器正确的在网路上找资料的位置,於是便以URL的方式使浏览器确定某一资源的位置。通常URL不一定是指向一份超媒体文件,它也可以是某种网路上的服务,如Ftp、Gopher等。
URL的格式
URL是以「://」为区隔,举例来说,「http://www.dreye.com/」这个网址,「://」之前的「http」便是Protocol(传输或通讯协定),而之后的「www.dreye.com」所指的便是伺服器的位址,其中「www」便是「World Wide Web」,而「dreye」是此站的名称,而「com」所指的是「网域类型」,由於受限於DNS的型式,所以其中需以「.」点分开;通常还会在后面加上「国别」(如台湾便是tw)而组成最基本URL的格式:「Protocol://连结类型.站名.网域类型.国别」。
http是通讯方式 他要用url
url简单说就是网址,URL(Uniform Resource Locator)中文名称是「全球资源定位器」,也被翻译做「通用资源位标」,是也就是一个位址,可单独识别网际网路上的电脑、目录或档案位置,也可以指定通讯协定,例如 Gopher、HTTP 等等。URL能让在Internet上的所有资源都能透过此的方法而找到其位置。
HTTP(Hypertext Transfer Protocol)超文字传输通讯协定是WWW中伺服器和浏览器最主要的沟通方式,而为了能让浏览器正确的在网路上找资料的位置,於是便以URL的方式使浏览器确定某一资源的位置。通常URL不一定是指向一份超媒体文件,它也可以是某种网路上的服务,如Ftp、Gopher等。
URL只是标识资源的位置,HTTP用来提交和获取资源,URL不仅用户HTTP还可以用于HTTPS、FTP等.
GET请求和POST请求有什么区别?GET请求的参数在URL的问号后面显示,而POST参数不在URL上;POST可以比GET请求更大的数据…一般的回答都是这样。

public static void main(String[] args) throws IOException {
// 服务器监听端口号8081
ServerSocket serverSocket = new ServerSocket(8081);
// 等待接收请求,这是一个阻塞的方法,当请求到来的时候才会继续向下执行
Socket socket = serverSocket.accept();
// 获取请求内容
InputStream is = socket.getInputStream();
InputStreamReader reader = new InputStreamReader(is);
// 输出请求内容
while (true) {
System.out.print((char)reader.read());
}
}

<form method="get" action="http://localhost:8081">
name:<input type="text" name="name" /><br>
age:<input type="text" name="age" /><br>
<input type="submit" />
</form>

GET /?name=XXG&age=23 HTTP/1.1
Host: localhost:8081
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8


POST / HTTP/1.1
Host: localhost:8081
Connection: keep-alive
Content-Length: 15
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Origin: null
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8 name=XXG&age=23

关于URL和http协议,http消息格式的更多相关文章
- MQTT-SN协议乱翻之消息格式
前言 紧接着上篇初步介绍,本文为第二篇,主要梳理MQTT-SN 1.2协议中定义的消息格式. 通用消息格式 消息头 其它可变部分 2/4字节表示 N字节组成 消息头部 长度 消息类型 1或3个字节 1 ...
- 详解FIX协议的原理、消息格式及配置开发
一.定义 FIX协议是由国际FIX协会组织提供的一个开放式协议,目的是推动国际贸易电子化的进程,在各类参与者之间,包括投资经理.经纪人,买方.卖方建立起实时的电子化通讯协议.FIX协议的目标是把各类证 ...
- 网络协议之:WebSocket的消息格式
目录 简介 WebSocket的握手流程 webSocket的消息格式 Extensions和Subprotocols 总结 简介 我们知道WebSocket是建立在TCP协议基础上的一种网络协议,用 ...
- Web Service 消息格式
当客户端和Web Service服务器进行通信时,他们交换消息.客户端发送请求消息到Web Service服务器. Web Service服务器响应并返回消息.这就像普通的HTTP,浏览器发送一个HT ...
- SIP消息类型和消息格式
转自:http://blog.chinaunix.net/uid-1797566-id-2840904.html sip消息类型和消息格式 SIP是一个基于文本的协议,使用的是UTF-8字符集. SI ...
- CORBA GIOP消息格式学习
想要深入理解ORB的工作过程与原理,学习与了解GIOP消息格式必不可少.我们知道GIOP是独立于具体通信的更高级别的抽象,因此这里针对GIOP在TCP/IP上的实现IIOP协议进行学习与分析(IIOP ...
- Kafka的消息格式
Commit Log Kafka储存消息的文件被它叫做log,按照Kafka文档的说法是: Each partition is an ordered, immutable sequence of me ...
- 性能测试基础---URL和HTTP协议
·URL和HTTP协议: ·URL构成: URL是web应用进行资源访问的主要方式.一般来说,由五个部分构成: 示例:http://192.168.2.212/phpwind1/searcher.ph ...
- Lind.DDD.LindMQ~关于持久化到Redis的消息格式
回到目录 关于持久化到Redis的消息格式,主要是说在Broker上把消息持久化的过程中,需要存储哪些类型的消息,因为我们的消息是分topic的,而每个topic又有若干个queue组成,而我们的to ...
- DNS消息格式
一,简介 空谈误国,要让一大堆抽象的DNS概念落地,还是需要了解DNS消息格式的,本文会尽量详细地介绍DNS消息格式的每一个字段. 也可以移步rfc1035了解. 二,概览 DNS消息主要由五部分组成 ...
随机推荐
- 苹果发布【新开发语言】Swift
Swift is a multi-tenant, highly scalable and durable object storage system that was designed to stor ...
- 《C++ Primer Plus》第4章 学习笔记
数组.结构和指针是C++的3中符合类型.数组可以在一个数据对象中存储多个同种类型的值.通过使用索引或下标,可以访问数组中各个元素.结构可以将多个不同类型的值存储在同一个数据对象中,可以使用成员关系运算 ...
- poj_1464 动态规划
题目大意 N个节点构成一棵树形结构,在其中若干个节点上放置士兵,与被放置士兵的节点相连的边会被士兵看守.问需要至少在多少个节点上放置士兵,才能使得N-1条边都被看守. 题目分析 题目描述的结构为树形, ...
- 部分常用dos命令
Microsoft Windows XP [版本 ] (C) 版权所有 - Microsoft Corp. C:\Documents and Settings\Administrator>d: ...
- Django学习笔记第十篇--实战练习六--发送邮件
一.发送邮件需要引入的包依赖文件(Django1.8 Python2.7) from django.core.mail import send_mail,send_mass_mail 其中send_m ...
- 【BZOJ1217】[HNOI2003]消防局的设立 树形DP
[BZOJ1217][HNOI2003]消防局的设立 Description 2020年,人类在火星上建立了一个庞大的基地群,总共有n个基地.起初为了节约材料,人类只修建了n-1条道路来连接这些基地, ...
- mysql如何用sql添加字段如何设置字符集和排序规则
alter table pay_company add sms_code2 varchar(16) CHARACTER SET UTF8 COLLATE utf8_general_ci DEFAULT ...
- JS中的call、apply、bind 用法解疑
JS中的caller arguments.callee call apply bind方法 一.call()和apply()方法 1.方法定义 call方法: 语法:call([thisObj ...
- SignalR循序渐进(一)简单的聊天程序
前阵子把玩了一下SignalR,起初以为只是个real-time的web通讯组件.研究了几天后发现,这玩意简直屌炸天,它完全就是个.net的双向异步通讯框架,用它能做很多不可思议的东西.它基于Owin ...
- Servlet------>jsp自定义标签SimpleTag(jsp2.0以后的方法,1-5已经淘汰了)
自定义标签能做什么: 1.移除java代码 2.控制jsp页面某一部分是否执行 3.控制整个jsp是否执行 3.jsp内容重复输出 4.修改jsp内容输出 位置: TagDemo1.java pack ...