根據HTTP header收集用戶端相關資訊 --- tornado demo

來源:互聯網
上載者:User

標籤:style   blog   http   io   color   ar   os   使用   sp   

理解:當Client Access Server時,會給伺服器發送相關資訊。

 

tornado程式中,可在“處理請求類”(繼承自tornado.web.RequestHandler)的請求函數中使用self.request.headers獲得HTTP header用戶端相關資訊(包括"User-Agent")

User-Agent說明:HTTP用戶端啟動並執行瀏覽器類型的詳細資料。通過該頭部資訊,web伺服器可以判斷到當前HTTP請求的用戶端瀏覽器類別。

 

tornado程式:

 1 import tornado.httpserver 2 import tornado.ioloop 3 import tornado.options 4 import tornado.web 5  6 from tornado.options import define, options 7 define("port", default=8000, help="run on the given port", type=int) 8  9 class IndexHandler(tornado.web.RequestHandler):10     def get(self):11         self.write("hello world")12         print self.request.headers13 14 15 if __name__ == "__main__":16     tornado.options.parse_command_line()17     app = tornado.web.Application(handlers=[(r"/", IndexHandler)], debug=True)18     http_server = tornado.httpserver.HTTPServer(app)19     http_server.listen(options.port)20     tornado.ioloop.IOLoop.instance().start()
View Code

 

運行上面的程式後可以在瀏覽器中輸入:http://localhost:8000訪問

 

訪問成功後,會在tornado程式中輸出

 

這是因為self.request.headers返回的是一個字典類型,用索引值對的方式儲存用戶端的資訊。

 

例如:

分析其中的‘User-Agent’:

Mozilla/5.0 : 先前用以指示與Mozilla排版引擎的相容性

(Windows NT 6.3; WOW64) : 瀏覽器所運行於的系統的詳細資料

AppleWebKit/537.36 : 瀏覽器所使用的平台

(KHTML, like Gecko) : 瀏覽器平台的細節

Chrome/38.0.2125.111 Safari/537.36 : 被瀏覽器用於指示特定的直接由瀏覽器提供或者通過第三方提供的可用的增強功能。

 

參考資料:http://en.wikipedia.org/wiki/User_agent 英文版

              http://zh.wikipedia.org/wiki/%E7%94%A8%E6%88%B7%E4%BB%A3%E7%90%86 中文版

根據HTTP header收集用戶端相關資訊 --- tornado demo

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.