write 用法( self.flush() )

render (跳转指定网页)用法

redirect(跳转指定路由)用法

self.request.remote_ip 显示用户 IP 地址

  lesson2.py

  1. # -*- coding:utf-8 -*-
  2.  
  3. import tornado.web
  4. import tornado.httpserver
  5. import tornado.options
  6. import tornado.ioloop
  7. import time
  8. import json
  9. from tornado.options import define,options
  10.  
  11. define('port', default = 8080, help = 'run port', type = int)
  12. define('version', default = '0.0.1', help = 'version 0.0.1', type = str)
  13.  
  14. class MainHandler(tornado.web.RequestHandler):
  15.  
  16. def get(self):
  17. self.write('小红 <br>') # write 可传入参数类型 bytes unicode字符 字典 json
  18. self.flush() # 半中断
  19. time.sleep(3)
  20. user={
  21. 'name' : "小明",
  22. 'age' : 18,
  23. 'gender' : 'male'
  24. }
  25. self.write(user)
  26. self.flush()
  27. self.write('<br>')
  28. li = [1,2,3,4,5]
  29. li = json.dumps(li) # write 传入json 时,html语法不会解析,原样输出,直到有 self.flush()
  30. self.write(li)
  31. self.flush()
  32.  
  33. '''打开指定网页'''
  34. class TemHandler(tornado.web.RequestHandler):
  35.  
  36. def get(self):
  37. self.render('01in-out.html')
  38.  
  39. '''跳转指定路由'''
  40. class RecHandler(tornado.web.RequestHandler):
  41.  
  42. def get(self):
  43. self.redirect("/tem")
  44.  
  45. '''查看访问服务器的IP地址'''
  46. class ReqHandler(tornado.web.RequestHandler):
  47.  
  48. def get(self):
  49. self.write(self.request.remote_ip) # 浏览器显示IP地址
  50. print(type(self.request.remote_ip),repr(self.request.remote_ip)) # 显示在后台服务器上
  51. print(self.request.full_url)
  52.  
  53. application = tornado.web.Application(
  54. handlers = [
  55. (r"/",MainHandler),
  56. (r"/tem",TemHandler),
  57. (r"/rec",RecHandler),
  58. (r"/req",ReqHandler),
  59. ],
  60. template_path = 'esle',
  61. debug = True
  62. )
  63.  
  64. if __name__ == '__main__':
  65. print(options.port)
  66. print(options.version)
  67. tornado.options.parse_command_line()
  68. http_server = tornado.httpserver.HTTPServer(application)
  69. http_server.listen(options.port)
  70. tornado.ioloop.IOLoop.instance().start()

2018-02-27 13:40:59

tornado write render redirect IP的更多相关文章

  1. python 全栈开发,Day119(Flask初识,Render Redirect HttpResponse,request,模板语言 Jinja2,用户登录例子,内置Session)

    一.Flask初识 首先,要看你学没学过Django 如果学过Django 的同学,请从头看到尾,如果没有学过Django的同学,并且不想学习Django的同学,轻饶过第一部分 三大主流Web框架对比 ...

  2. 第二篇 Flask 中的 Render Redirect HttpResponse

    第二篇 Flask 中的 Render Redirect HttpResponse   1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返 ...

  3. django-HttpResponse,render,redirect

    1.导入相应的包 from django.shortcuts import HttpResponse, render, redirect 2.HttpResponse(返回字符串给浏览器) def i ...

  4. day65 request对象,以及方法,response对象,render,redirect

    这里的都是我们会频繁使用到的,用得多了自然就会了,我们写项目都是少不了这些用法的,所以这就把老师的博客粘过来就好了, Request对象 官方文档 属性 所有的属性应该被认为是只读的,除非另有说明. ...

  5. HttpResponse,render,redirect,静态文件配置,request对象方法,pycharm连接MySQL,django连接MySQL,django ORM

    HttpResponse 主要用于返回字符串类型的数据 def index(request): return HttpResponse('index页面') 在页面中就会显示 index页面 rend ...

  6. Flask最强攻略 - 跟DragonFire学Flask - 第二篇 Flask 中的 Render Redirect HttpResponse

    1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi" ...

  7. 2,Flask 中的 Render Redirect HttpResponse

    一,Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 二,.Flask中的Redirect 每当访问"/redi" ...

  8. Django基础必备三件套: HttpResponse render redirect

    1. HttpResponse :  它的作用是内部传入一个字符串参数, 然后发给浏览器 def index(request): return HttpResponse('ok') 2. render ...

  9. Flask 中的 Render Redirect HttpResponse

    1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi" ...

随机推荐

  1. 【刷题】BZOJ 2038 [2009国家集训队]小Z的袜子(hose)

    Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命-- 具体来说,小Z把这N只 ...

  2. [洛谷P3550][POI2013]TAK-Taxis

    题目大意:一条路上有三个点,$0$为起始位置,$d$为总部,$m$为家.有$n$辆车,每辆车最多行驶$x_i$,都从$d$出发,可以在任意位置结束,问最少几辆车可以到家. 题解:贪心,发现当人在$[0 ...

  3. BZOJ4873 [Shoi2017]寿司餐厅 【最大权闭合子图】

    题目链接 BZOJ4873 题解 题意很鬼畜,就可以考虑网络流[雾] 然后就会发现这是一个裸的最大权闭合子图 就是注意要离散化一下代号 #include<algorithm> #inclu ...

  4. CodeForces - 50A Domino piling (贪心+递归)

    CodeForces - 50A Domino piling (贪心+递归) 题意分析 奇数*偶数=偶数,如果两个都为奇数,最小的奇数-1递归求解,知道两个数都为1,返回0. 代码 #include ...

  5. [IOI2007]Miners 矿工配餐

    link 其实就是一个比较简单的$IOI$题.简单$dp$就行,设$5$维$dp$即可 最后在滚动一下,判一下可行性即可. #include<iostream> #include<c ...

  6. ios的hitTest方法以及不规则区域内触摸事件处理方法

    概述 在正常的使用场景中,我们处理了比较多的矩形区域内触摸事件,比如UIButton.UIControl.一般来说,这些控件的图形以及触摸区域都是矩形或者圆角矩形的.但是在一些特殊应用场景中我们有时不 ...

  7. 题解【luoguP1351 NOIp提高组2014 联合权值】

    题目链接 题意:给定一个无根树,每个点有一个权值.若两个点 \(i,j\) 之间距离为\(2\),则有联合权值 \(w_i \times w_j\).求所有的联合权值的和与最大值 分析: 暴力求,每个 ...

  8. acm1217教训

    能用容器去做的用容器做,尽量少用数组,即使自己明确其数量的上届: #include<iostream> #include<cstring> #include<map> ...

  9. gitlab 的使用策略和简单介绍

    gitlab 作为版本控制器,基本使用和github 相同,以下是一些策略和介绍: Git 分支管理策略可以参考下面三个链接: http://www.ruanyifeng.com/blog/2012/ ...

  10. 配置静态服务器和配置nfs

    一.配置Nginx 1.安装Nginx yum -y install nginx 2.编写配置文件 [root@ngix nginx]# cd /etc/nginx [root@ngix nginx] ...