Python的Bottle框架中返回静态文件和JSON对象的方法


Posted in Python onApril 30, 2015

代码如下:

# -*- coding: utf-8 -*-
#!/usr/bin/python
# filename: todo.py
# codedtime: 2014-8-28 20:50:44

import sqlite3
import bottle
  
@bottle.route('/help3')
def help():
  return bottle.static_file('help.html', root='.') #静态文件

@bottle.route('/json:json#[0-9]+#')
def show_json(json):
  conn = sqlite3.connect('todo.db')
  c = conn.cursor()
  c.execute("SELECT task FROM todo WHERE id LIKE ?", (json))
  result = c.fetchall()
  c.close()

  if not result:
    return {'task':'This item number does not exist!'}
  else:
    return {'Task': result[0]} #返回Json对象

bottle.debug(True)
bottle.run(host='127.0.0.1', port=8080, reloader = True)

 第一个路由@bottle.route('/help3') 返回一个静态问,在浏览器中输入:http://127.0.0.1:8080/help3

结果如下:

Python的Bottle框架中返回静态文件和JSON对象的方法

其中的 root='.')或 root='./')表示在程序当前目录下,当然你也可以知道其他的路径如: root='/path/to/file'

第二个路由@bottle.route('/json:json#[0-9]+#')返回一个Json对象,在浏览器中输入:http://127.0.0.1:8080/json4

结果如下:

Python的Bottle框架中返回静态文件和JSON对象的方法

Web程序难免会遇到访问失败的错误,那么怎样去捕获这些错误,Bottle可以用路由机制来捕捉错误,如下捕获403、404:

@error(403)
def mistake403(code):
  return 'The parameter you passed has the wrong format!'

@error(404)
def mistake404(code):
  return 'Sorry, this page does not exist!'

其他错误处理如法泡制!

Python 相关文章推荐
Django实现的自定义访问日志模块示例
Jun 23 Python
Python numpy实现数组合并实例(vstack,hstack)
Jan 09 Python
浅谈Python实现2种文件复制的方法
Jan 19 Python
Python OpenCV处理图像之图像直方图和反向投影
Jul 10 Python
python 读取鼠标点击坐标的实例
Dec 29 Python
tensorflow estimator 使用hook实现finetune方式
Jan 21 Python
Python多线程threading join和守护线程setDeamon原理详解
Mar 18 Python
浅谈keras中的keras.utils.to_categorical用法
Jul 02 Python
Python调用C语言程序方法解析
Jul 07 Python
python两个list[]相加的实现方法
Sep 23 Python
PyTorch 中的傅里叶卷积实现示例
Dec 11 Python
pytorch锁死在dataloader(训练时卡死)
May 28 Python
使用Python编写提取日志中的中文的脚本的方法
Apr 30 #Python
简单的连接MySQL与Python的Bottle框架的方法
Apr 30 #Python
Python的Bottle框架中实现最基本的get和post的方法的教程
Apr 30 #Python
Python中使用Beautiful Soup库的超详细教程
Apr 30 #Python
Python中正则表达式的详细教程
Apr 30 #Python
详解在Python程序中使用Cookie的教程
Apr 30 #Python
处理Python中的URLError异常的方法
Apr 30 #Python
You might like
php下的权限算法的实现
2007/04/28 PHP
php权重计算方法代码分享
2014/01/09 PHP
php实现遍历目录并删除指定文件中指定内容
2015/01/21 PHP
PHP pthreads v3下worker和pool的使用方法示例
2020/02/21 PHP
php生成短网址/短链接原理和用法实例分析
2020/05/29 PHP
xmlHTTP实例
2006/10/24 Javascript
jQuery 阴影插件代码分享
2012/01/09 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
2014/04/15 Javascript
jQuery设置和获取HTML、文本和值示例
2014/07/08 Javascript
js实现头像图片切割缩放及无刷新上传图片的方法
2015/07/17 Javascript
js实现无限级树形导航列表效果代码
2015/09/23 Javascript
JavaScript构造函数详解
2015/12/27 Javascript
javascript 内置对象及常见API详细介绍
2016/11/01 Javascript
网络传输协议(http协议)
2016/11/18 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
vue中appear的用法
2017/08/17 Javascript
vue单个组件实现无限层级多选菜单功能
2018/04/10 Javascript
微信小程序云开发详细教程
2019/05/16 Javascript
QML实现圆环颜色选择器
2019/09/25 Javascript
vue.js 输入框输入值自动过滤特殊字符替换中问标点操作
2020/08/31 Javascript
[05:08]顺网杯ISS-DOTA2赛歌 少女偶像Lunar青春演绎
2013/12/05 DOTA
Python中字符串的格式化方法小结
2016/05/03 Python
Python极简代码实现杨辉三角示例代码
2016/11/15 Python
python通过elixir包操作mysql数据库实例代码
2018/01/31 Python
dataframe设置两个条件取值的实例
2018/04/12 Python
python3 遍历删除特定后缀名文件的方法
2018/04/23 Python
Python lxml模块的基本使用方法分析
2019/12/21 Python
基于jupyter代码无法在pycharm中运行的解决方法
2020/04/21 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
css3媒体查询中device-width和width的区别详解
2020/03/27 HTML / CSS
生日庆典策划方案
2014/06/02 职场文书
学雷锋日活动总结
2015/02/06 职场文书
护士业务学习心得体会
2016/01/25 职场文书
详解Python中下划线的5种含义
2021/07/15 Python