路由参数与请求方式制定  

ALT+回车 pycharm 快速导包 

demo3  指定访问地址  与请求方式 

#   给路由传入参数 使用尖括号 ,视图函数需要接收参数

@app.route("/index/<int:user_id>", method=['POST, 'GET'])

def index(user_id):

  return "%s + demo" % user_id

  1. from flask import Flask, request
  2.  
  3. app = Flask(__name__,
  4. static_url_path='/python27', # 必须以斜杠开头 否则报错
  5. static_folder='static',
  6. template_folder='templates')
  7.  
  8. @app.route('/')
  9. def index():
  10. return "hello wolrd"
  11.  
  12. # 给路由传入参数 使用尖括号 ,视图函数需要接收参数
  13. # <int:user_id> 限定参数为整数
  14. @app.route('/user/<int:user_id>')
  15. def demo01(user_id):
  16. return "%s+demo2" % user_id
  17.  
  18. # 添加请求方式
  19. @app.route("/demo3", methods=['GET', 'POST'])
  20. def demo3():
  21. # 打印请求类型
  22. return "demo3 %s" % request.method
  23.  
  24. if __name__ == '__main__':
  25. app.run("127.0.0.1", 8080, debug=True)
  26.  
  27. 路由参数与请求方式

路由参数与请求方式

demo4 将字典转成json格式 

# json.dumps("{字典}") 字典转换json字符串

# json.loads("{json"}) json转字典      封装响应 指定返回类型

直接使用 return jsonify(字典) 直接返回json格式 Flask自带  指定返回content-type【内容类型】

return jsonify("字典参数")

  1. from flask import Flask, request, json
  2.  
  3. app = Flask(__name__,
  4. static_url_path='/python27', # 必须以斜杠开头 否则报错
  5. static_folder='static',
  6. template_folder='templates')
  7.  
  8. @app.route('/')
  9. def index():
  10. return "hello wolrd"
  11.  
  12. # 给路由传入参数 使用尖括号 ,视图函数需要接收参数
  13. # <int:user_id> 限定参数为整数
  14. @app.route('/user/<int:user_id>')
  15. def demo01(user_id):
  16. return "%s+demo2" % user_id
  17.  
  18. # 添加请求方式
  19. @app.route("/demo3", methods=['GET', 'POST'])
  20. def demo3():
  21. # 打印请求类型
  22. return "demo3 %s" % request.method
  23.  
  24. @app.route("/json")
  25. def demo4():
  26. # key 必须为字符串
  27. json_dict = {
  28. "name": "laowang",
  29. "age": 18,
  30. "color": "green"
  31. }
  32. # 将字典转为字符串
  33. #result = json.dumps(json_dict)
  34. return jsonify(json_dict)
  35.  
  36. if __name__ == '__main__':
  37. app.run("127.0.0.1", 8080, debug=True)

字典转换成json

demo5 重定向 

# url_for 指定视图的路由URL 并且可以携带参数

@app.route("/redirect")

def demo5():

  # return redirect("https://www.baidu.com")

     return redirect(url_for("demo01", user_id=123))

  1. from flask import Flask, request, json, redirect, url_for
  2.  
  3. app = Flask(__name__,
  4. static_url_path='/python27', # 必须以斜杠开头 否则报错
  5. static_folder='static',
  6. template_folder='templates')
  7.  
  8. @app.route('/')
  9. def index():
  10. return "hello wolrd"
  11.  
  12. # 给路由传入参数 使用尖括号 ,视图函数需要接收参数
  13. # <int:user_id> 限定参数为整数
  14. @app.route('/user/<int:user_id>')
  15. def demo01(user_id):
  16. return "%s+demo2" % user_id
  17.  
  18. # 添加请求方式
  19. @app.route("/demo3", methods=['GET', 'POST'])
  20. def demo3():
  21. # 打印请求类型
  22. return "demo3 %s" % request.method
  23.  
  24. @app.route("/json")
  25. def demo4():
  26. # key 必须为字符串
  27. json_dict = {
  28. "name": "laowang",
  29. "age": 18,
  30. "color": "green"
  31. }
  32. # 将字典转为字符串
  33. result = json.dumps(json_dict)
  34. test_dict = json.loads('{"name":"laowang","age":18}')
  35.  
  36. return result
  37.  
  38. # demo5 重定向
  39. @app.route("/redirect")
  40. def demo5():
  41. # return redirect("https://www.baidu.com")
  42. return redirect(url_for("demo01", user_id=123))
  43.  
  44. if __name__ == '__main__':
  45. app.run("127.0.0.1", 8080, debug=True)

demo5 重定向并使用url_for 指定视图路由

demo6 自定义状态码

@app.route("/demo6")

def demo6():

  return 'demo6' , 666

一个爱学习的oscar

【Flask】 python学习第一章 - 2.0 视图方式和返回值的更多相关文章

  1. 【Flask】 python学习第一章 - 5.0 模板

    jinjia2 模板 python实现 flask 内置语言  参照Djago实现  设置模板文件夹 设置模板语言 jinja2 demo6_template.html  ----> 从代码渲染 ...

  2. 【Flask】 python学习第一章 - 4.0 钩子函数和装饰器路由实现 session-cookie 请求上下文

    钩子函数和装饰器路由实现 before_request 每次请求都会触发 before_first_requrest  第一次请求前触发 after_request  请求后触发 并返回参数 tear ...

  3. 【Flask+Redis】 python学习第一章 - 7.0 断言 数据库测试 redis学习

    assert 断言 def div(num1, num2): # 断言 assert isinstance(num1, int), "值类型错误" assert isinstanc ...

  4. 【Flask】 python学习第一章 - 6.0 WTF表单 数据库 蓝图

    WTF表单  wtf.py pip install flask-wtf  # 安装 from flask_wtf import FlaskForm from wtform import StringF ...

  5. 【Flask】 python学习第一章 - 3.0 正则转换和错误捕捉

    3.1正则转换器定义 Class RegexConverter(BaseConverter): regex = "[0-9]{6}" app.url_map.converters[ ...

  6. python学习 第一章(说不定会有第零章呢)one day

    ------------恢复内容开始------------ 一.啥是python python是吉尔·范罗苏姆于1989年开发的一个新的脚本解释程序,是ABC语言的一种继承. 二.python的特点 ...

  7. 【Flask】 python学习第一章 - 创建与运行参数

    windos 创建环境 sudo pip install virtualenv   # 安装virtualenv virtualenv -p python dir_name cd dir_name p ...

  8. Python 学习第一章

    学习内容如下: Python 介绍 Python 3 VS Python 2 软件的安装 第一个 Python 程序 变量与字符编码 用户输入与注释 一.Python 介绍 python的创始人为吉多 ...

  9. Python学习第一章

    1.Python保留字即是关键字,我们不可以把他们当作任何标识符名称. python的标准库提供了一个keyword模板,可以输出当前版本的关键字: >>>import keywor ...

随机推荐

  1. MD5(2)

    /************************************************ MD5 算法的Java Bean @author:Topcat Tuppin Last Modifi ...

  2. EasyNVR网页无插件播放摄像机RTSP流是如何调取接口在Web页实现多窗口同时直播的

    背景需求 在互联网飞速发展的时代,开发者常会说的一个词就是"跨平台".自从移动端的用户需求越来越大,H5逐渐发展,跨平台似乎已经成为了软件开发不可或缺的技术.EasyNVR互联网直 ...

  3. Oracle-关于Oracle.ManagedDataAccess

    今天调用webservice的时候,运行程序后开始报错以下的错误信息 “/”应用程序中的服务器错误. 未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项.试图加载格式不正确的 ...

  4. win10系统svn传图片卡死

        win10系统svn传图片或者文件有时候会卡死,原因是此种文件的默认打开程序与svn冲突了 svn提交的时候要打开图片,但是图片默认打开程序也要打开 所以冲突了 改下不冲突的默认打开程序就行了 ...

  5. hashmap源码解析,JDK1.8和1.7的区别

    背景:hashmap面试基础必考内容,需要深入了解,并学习其中的相关原理.此处还要明白1.7和1.8不通版本的优化点. Java 8系列之重新认识HashMap Java 8系列之重新认识HashMa ...

  6. Java字符串无意识的递归

    Java中的每个类基本上都继承自Object,标准容器类自然也不例外.因此容器类都有toString()方法,并且重写了该方法,使得它生成的String结果能够表达容器本身,以及容器所包含的对象.例如 ...

  7. 史上最详细bitbucket入门手册,手把手操作指南

    老大要我去调研一下有什么好用的免费软件版本管理工具,有利于小团队开发的.我第一个想到的就是git,经常在git下东西,听说它的代码仓库好用,于是就注册了一个github的账号,创建仓库的时候才发现只能 ...

  8. 【转帖】MIPS构架:曾经是英特尔的“眼中钉”

    MIPS构架:曾经是英特尔的“眼中钉” https://www.eefocus.com/mcu-dsp/363953 <处理器史话>之十一 2016-06-17 08:02 作者:付丽华预 ...

  9. Java开发笔记(一百三十四)Swing的基本对话框

    桌面程序在运行过程中,时常需要在主界面之上弹出小窗,把某种消息告知用户,以便用户及时知晓并对症处理.这类小窗口通常称作对话框,依据消息交互的过程,可将对话框分为三类:消息对话框.确认对话框.输入对话框 ...

  10. 33 Eclipse无法查看源码解决

    问题如图 点击 Attach Source 解决方法 下载src.zip包,src包地址:https://pan.baidu.com/s/1oAqqqHO 选择此src包即可