在开发网页服务器之前,必须了解网际网路资料传输的基本背景知识。今天的内容是简单介绍常被忽略的网际网路知识之Protocal(通讯协定)的概念。
Protocol(通讯协定)指的是在网际网路中两个端点通讯时必须遵守的规则,就网站系统而言,是使用者端与服务器端都需要理解并使用的特定规则,通讯协定有许多类型,例如TCP/IP、HTTP、FTP、SMTP都是通讯协定。
TCP(Transmission Control Protocol,传输控制协定)和IP(Internet Protocol,网际网路协定)是网际网路基础通讯架构下最早通过的标准,TCP是负责在网际网路中传输资料的协定;IP作为网际网路中识别的协定,纪录网际网路的位址。
在网际网路中以socket连结端点并作为资料传输的机制,资料格式会以HTTP、FTP、SMTP等通讯协定规范,并透过TCP将资料分成封包(packet)後传输。
为了连结的端点位址并提供传送的通道,socket会以IP及埠(port)组成socket位址,藉由埠可以确认接收或处理被传递的资料的程序。
HTTP(HyperText Transfer Protocol,超文本传输协定)是一个在网页上传输资料的规则,遵循该协定的资料包含:*.html、*.js、*.css、*.img等,资料透过HTTP协定以特定规格传送,架构包含:纪录连线的状态的Status、记录相关资讯的Headers与主要资料内容Body,其中Headers内容的Content-Type是主要标记资料类型的部份,以MIME(Multipurpose Internet Mail Extensions)格式纪录,记录的格式为类型/次类型,例如:text/html、application/json、image/jpeg等。
虽然这些关於网际网路的基础知识在开发的过程中也可能不会用到,但补充这些相关的概念之後,在除错的过程中也会有所帮助,例如连线问题的厘清、资料传递的错误等等。
https://sites.google.com/site/wangjiwanglumingcijieshao/home/tcp-ip
https://zh.wikipedia.org/wiki/网路插座
https://zh.wikipedia.org/wiki/多用途互联网邮件扩展
Learn and Understand NodeJS [课程]
>>: Day 11 - Design System x 实作 — Transition
Maven简介 Day08_Maven简介 ...
其实我们这样子写的方式, 感觉有点像在呼叫API, 所以我们决定要把它改成放到API, 我们把原本在...
前言 Hi, 我是鱼板伯爵今天要教大家 Container 这个元件,教学内容只会撷取片段程序码,建...
建立动态查询 还记得之几篇一开始如何使用条件查询 firestore 的资料吗? this.fir...
除了 Email 以外 Laravel 也有着各种各样的通知功能,这些功能整合在 Notifcati...