用python搭建一个web service 接口 ( RESTful API )


项目里需要提供给另一个平台数据库操作接口,通过接口对数据进行增删改查操作,而不必关心数据底层操作,希望底层变化,接口不变,不影响调用平台。 

实现设计: 

1、使用apache提供web服务

2、使用mod_wsgi 模块扩展对python 支持

3、使用  flaskr  python模块实现 Restful api 

实现过程:

环境:centos6.4 

安装 yum -y install   httpd httpd-devel  mod_wsgi  python-flask-*    python-jinja2

安装过程中 jinja2模块有bug 需要手工下载源码安装: 

https://pypi.python.org/pypi/Jinja2

wget 'https://pypi.python.org/packages/source/J/Jinja2/Jinja2-2.7.3.tar.gz' 

tar xzvf  Jinja2-2.7.3.tar.gz

python2.6  setup.py install 

二、配置apache 支持wsgi 模块

[root@ Jinja2-2.7.3]#cat /etc/httpd/conf.d/wsgi.conf  
LoadModule wsgi_module modules/mod_wsgi.so

#WSGIScriptAlias /test "/var/www/wsgi/test.wsgi"

WSGISocketPrefix /var/run/wsgi

<VirtualHost *>

WSGIDaemonProcess site user=apache group=apache threads=5
WSGIScriptAlias /test /var/www/wsgi/test.wsgi

<Directory /var/www/wsgi>
WSGIProcessGroup  site
WSGIApplicationGroup %{GLOBAL}
#WSGIScriptReloading On
Order deny,allow
Allow from all
</Directory>
</VirtualHost>

三、安装rusful 模块 

源码下载地址: 

cd /var/www/

wget  http://hasebook.net/wsgi.tar.gz 

tar czvf wsgi.tar.gz

因为centos 有文件权限问题 

cp wsgi/flaskr.db  /tmp/  ;

chown apache.apache /tmp/flaskr.db 

chmod 777 /tmp/flaskr.db  

四 、安装完成以后重启服务器 

service httpd restart

访问: http://localhost/test      

官方文档:  http://flask.pocoo.org/docs/0.10/ 















转载于:https://my.oschina.net/hao7234/blog/478128

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值