1. 程式人生 > >Html和websocket初識

Html和websocket初識

顯示 web程序 按順序 lang har www. 語法 strong xhtml

一、web框架

  眾所周知,對於所有的Web應用,本質上其實就是一個socket服務端,用戶的瀏覽器其實就是一個socket客戶端。

import socket
  
def 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來實現了其本質,而對於真實開發中的python web程序來說,一般會分為兩部分:服務器程序和應用程序。服務器程序負責對socket服務器進行封裝,並在請求到來時,對請求的各種數據進行整理。應用程序則負責具體的邏輯處理。為了方便應用程序的開發,就出現了眾多的Web框架,例如:Django、Flask、web.py 等。不同的框架有不同的開發方式,但是無論如何,開發出的應用程序都要和服務器程序配合,才能為用戶提供服務。這樣,服務器程序就需要為不同的框架提供不同的支持。這樣混亂的局面無論對於服務器還是框架,都是不好的。對服務器來說,需要支持各種不同框架,對框架來說,只有支持它的服務器才能被開發出的應用使用。這時候,標準化就變得尤為重要。我們可以設立一個標準,只要服務器程序支持這個標準,框架也支持這個標準,那麽他們就可以配合使用。一旦標準確定,雙方各自實現。這樣,服務器可以支持更多支持標準的框架,框架也可以使用更多支持標準的服務器。

  WSGI(Web Server Gateway Interface)是一種規範,它定義了使用python編寫的web app與web server之間接口格式,實現web app與web server間的解耦。

二、Html是什麽

  • 超文本標記語言(Hypertext Markup Language,HTML)通過標簽語言來標記要顯示的網頁中的各個部分。一套規則,瀏覽器認識的規則
  • 瀏覽器按順序渲染網頁文件,然後根據標記符解釋和顯示內容。但需要註意的是,對於不同的瀏覽器,對同一標簽可能會有不完全相同的解釋(兼容性)
  • 靜態網頁文件擴展名:.html 或 .htm

三、Html結構

  技術分享圖片

  • <!DOCTYPE html> 告訴瀏覽器使用什麽樣的html或者xhtml來解析html文檔
  • <html></html>是文檔的開始標記和結束標記。此元素告訴瀏覽器其自身是一個 HTML 文檔,在它們之間是文檔的頭部<head>和主體<body>
  • <head></head>元素出現在文檔的開頭部分。<head>與</head>之間的內容不會在瀏覽器的文檔窗口顯示,但是其間的元素有特殊重要的意義。
  • <title></title>定義網頁標題,在瀏覽器標題欄顯示。
  • <body></body>之間的文本是可見的網頁主體內容

四、Html標簽格式  技術分享圖片

  標簽的語法:

  <標簽名 屬性1=“屬性值1” 屬性2=“屬性值2”……>內容部分</標簽名>
  <標簽名 屬性1=“屬性值1” 屬性2=“屬性值2”…… />

五、Html註釋

  註釋 <!-- --> 

<!DOCTYPE html>
# 單行註釋
<!-- 這是註釋格式 -->
<!--DOCTYPE 對應關系-->
<html lang="en">
# 多行註釋
<!-- html標簽,只能有一個html標簽,標簽內部可以寫屬性,
    lang="en"就是內部屬性-->

<head>
    <!--head標簽中定義的東西外部看不見,除了title標簽,title是標題 -->
    <meta charset="UTF-8">
    <!-- 指定字符編碼 -->
    <title>網頁標題</title>
    <!---->
</head>
<body>
    <a href="http://www.baidu.com">百度</a>
</body>
</html>

  

Html和websocket初識