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 相关文章推荐
基于scrapy实现的简单蜘蛛采集程序
Apr 17 Python
python3音乐播放器简单实现代码
Apr 20 Python
python3 shelve模块的详解
Jul 08 Python
对Python 除法负数取商的取整方式详解
Dec 12 Python
python+selenium实现自动化百度搜索关键词
Jun 03 Python
Python Django Cookie 简单用法解析
Aug 13 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
Dec 20 Python
keras获得某一层或者某层权重的输出实例
Jan 24 Python
keras中模型训练class_weight,sample_weight区别说明
May 23 Python
Python生成器next方法和send方法区别详解
May 30 Python
python基于exchange函数发送邮件过程详解
Nov 06 Python
python热力图实现简单方法
Jan 29 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小经验:解析preg_match与preg_match_all 函数
2013/06/29 PHP
PHP URL参数获取方式的四种例子
2014/02/28 PHP
htm调用JS代码
2007/03/15 Javascript
javascript基本语法分析说明
2008/06/15 Javascript
jquery选择器的选择使用及性能介绍
2013/01/16 Javascript
JS自定义功能函数实现动态添加网址参数修改网址参数值
2013/08/02 Javascript
JS求平均值的小例子
2013/11/29 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
2015/04/06 Javascript
js实现tab切换效果实例
2015/09/16 Javascript
jQuery取得iframe中元素的常用方法详解
2016/01/14 Javascript
jQuery1.9+中删除了live以后的替代方法
2016/06/17 Javascript
vue 通过下拉框组件学习vue中的父子通讯
2017/12/19 Javascript
基于$.ajax()方法从服务器获取json数据的几种方式总结
2018/01/31 Javascript
详解vue2.0+vue-video-player实现hls播放全过程
2018/03/02 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
JS实现的简单分页功能示例
2018/08/23 Javascript
微信小程序自定义菜单切换栏tabbar组件代码实例
2019/12/30 Javascript
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
python获取文件扩展名的方法
2015/07/06 Python
Python用Pillow(PIL)进行简单的图像操作方法
2017/07/07 Python
python实现批量修改图片格式和尺寸
2018/06/07 Python
python批量修改图片后缀的方法(png到jpg)
2018/10/25 Python
使用python的pexpect模块,实现远程免密登录的示例
2019/02/14 Python
python 实现将Numpy数组保存为图像
2020/01/09 Python
Python关键字及可变参数*args,**kw原理解析
2020/04/04 Python
CSS3实现淘宝留白的方法
2020/06/05 HTML / CSS
html+css3实现的登录界面
2020/12/09 HTML / CSS
交通事故协议书
2014/04/15 职场文书
ktv周年庆活动方案
2014/08/18 职场文书
缓刑期间思想汇报范文
2014/10/10 职场文书
银行授权委托书格式
2014/10/10 职场文书
优秀班主任先进事迹材料
2014/12/16 职场文书
2015年法制宣传月活动总结
2015/03/26 职场文书
2019年中,最受大众欢迎的6本新书
2019/08/07 职场文书