Html和websocket初识
一、web框架
眾所周知,對于所有的Web應(yīng)用,本質(zhì)上其實就是一個socket服務(wù)端,用戶的瀏覽器其實就是一個socket客戶端。
import socketdef handle_request(client):buf = client.recv(1024)client.send(b"HTTP/1.1 200 OK\r\n\r\n")client.send(b"Hello, Bigberg")def main():sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)sock.bind(('localhost',8000))sock.listen(5)while True:connection, address = sock.accept()handle_request(connection)connection.close()if __name__ == '__main__':main()上述通過socket來實現(xiàn)了其本質(zhì),而對于真實開發(fā)中的python web程序來說,一般會分為兩部分:服務(wù)器程序和應(yīng)用程序。服務(wù)器程序負(fù)責(zé)對socket服務(wù)器進(jìn)行封裝,并在請求到來時,對請求的各種數(shù)據(jù)進(jìn)行整理。應(yīng)用程序則負(fù)責(zé)具體的邏輯處理。為了方便應(yīng)用程序的開發(fā),就出現(xiàn)了眾多的Web框架,例如:Django、Flask、web.py 等。不同的框架有不同的開發(fā)方式,但是無論如何,開發(fā)出的應(yīng)用程序都要和服務(wù)器程序配合,才能為用戶提供服務(wù)。這樣,服務(wù)器程序就需要為不同的框架提供不同的支持。這樣混亂的局面無論對于服務(wù)器還是框架,都是不好的。對服務(wù)器來說,需要支持各種不同框架,對框架來說,只有支持它的服務(wù)器才能被開發(fā)出的應(yīng)用使用。這時候,標(biāo)準(zhǔn)化就變得尤為重要。我們可以設(shè)立一個標(biāo)準(zhǔn),只要服務(wù)器程序支持這個標(biāo)準(zhǔn),框架也支持這個標(biāo)準(zhǔn),那么他們就可以配合使用。一旦標(biāo)準(zhǔn)確定,雙方各自實現(xiàn)。這樣,服務(wù)器可以支持更多支持標(biāo)準(zhǔn)的框架,框架也可以使用更多支持標(biāo)準(zhǔn)的服務(wù)器。
WSGI(Web Server Gateway Interface)是一種規(guī)范,它定義了使用python編寫的web app與web server之間接口格式,實現(xiàn)web app與web server間的解耦。
二、Html是什么
- 超文本標(biāo)記語言(Hypertext Markup Language,HTML)通過標(biāo)簽語言來標(biāo)記要顯示的網(wǎng)頁中的各個部分。一套規(guī)則,瀏覽器認(rèn)識的規(guī)則
- 瀏覽器按順序渲染網(wǎng)頁文件,然后根據(jù)標(biāo)記符解釋和顯示內(nèi)容。但需要注意的是,對于不同的瀏覽器,對同一標(biāo)簽可能會有不完全相同的解釋(兼容性)
- 靜態(tài)網(wǎng)頁文件擴(kuò)展名:.html 或 .htm
三、Html結(jié)構(gòu)
- <!DOCTYPE html> 告訴瀏覽器使用什么樣的html或者xhtml來解析html文檔
- <html></html>是文檔的開始標(biāo)記和結(jié)束標(biāo)記。此元素告訴瀏覽器其自身是一個 HTML 文檔,在它們之間是文檔的頭部<head>和主體<body>
- <head></head>元素出現(xiàn)在文檔的開頭部分。<head>與</head>之間的內(nèi)容不會在瀏覽器的文檔窗口顯示,但是其間的元素有特殊重要的意義。
- <title></title>定義網(wǎng)頁標(biāo)題,在瀏覽器標(biāo)題欄顯示。
- <body></body>之間的文本是可見的網(wǎng)頁主體內(nèi)容
四、Html標(biāo)簽格式
?
標(biāo)簽的語法:
<標(biāo)簽名 屬性1=“屬性值1” 屬性2=“屬性值2”……>內(nèi)容部分</標(biāo)簽名>
<標(biāo)簽名 屬性1=“屬性值1” 屬性2=“屬性值2”…… />
五、Html注釋
注釋 <!-- -->
<!DOCTYPE html> # 單行注釋 <!-- 這是注釋格式 --> <!--DOCTYPE 對應(yīng)關(guān)系--> <html lang="en"> # 多行注釋 <!-- html標(biāo)簽,只能有一個html標(biāo)簽,標(biāo)簽內(nèi)部可以寫屬性,lang="en"就是內(nèi)部屬性--><head><!--head標(biāo)簽中定義的東西外部看不見,除了title標(biāo)簽,title是標(biāo)題 --><meta charset="UTF-8"><!-- 指定字符編碼 --><title>網(wǎng)頁標(biāo)題</title><!----> </head> <body><a href="http://www.baidu.com">百度</a> </body> </html>
總結(jié)
以上是生活随笔為你收集整理的Html和websocket初识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: transition
- 下一篇: html5与css3入门知识点精炼