文档章节

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

holelulu
 holelulu
发布于 2015/07/13 22:50
字数 310
阅读 415
收藏 0


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

实现设计: 

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/ 















© 著作权归作者所有

共有 人打赏支持
holelulu
粉丝 0
博文 18
码字总数 5585
作品 0
其他
私信 提问
【译】使用python创建一个简单的restful风格的webservice应用

这是一个如何使用python快速构建简单restful风格webservice的应用教程。 1.分析rest路由规则 rest风格的服务通常使用web.py来创建服务器端脚本,一般情况下包含两个url路径: 一个是为了查询所...

jeffsui
2014/08/04
0
0
使用Django构建Python Restful服务1、搭建一个Django Web环境

文章首发个人微信公众号及博客:http://zmister.com/archives/260.html 欢迎访问个人博客:http://zmister.com 查看更多Python应用文章 欢迎关注个人微信公众号:州的先生 及时交流讨论 1.0 ...

州的先生
2018/05/16
0
0
『阅读源代码的姿势:以 go-restful 为例』

大家好,我叫谢伟,是一名程序员。 下面结合我的经历和见闻,讲述下一名非科班程序员的成长过程: 学习一门编程语言 写尽量多的代码 补尽量多的基础知识 一定阶段后(有开发任务,能按时完成)...

谢小路
2018/05/21
0
0
spring+restful service

Spring整合CXF,发布RSETful 风格WebService 这篇文章是承接之前CXF整合Spring的这个项目示例的延伸,所以有很大一部分都是一样的。关于发布CXF WebServer和Spring整合CXF这里就不再多加赘述...

游宵
2014/04/25
0
1
Node.js RESTful API

Node.js RESTful API 现在介绍Node.js的RESTful API。 。。。 什么是 REST? REST中文解释为,表述性状态传递(英文:Representational State Transfer,简称REST),是Roy Fielding博士在2...

我要努力_为自己
2018/11/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

C++ vector和list的区别

1.vector数据结构 vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。 因此能高效的进行随机存取,时间复杂度为o(1); 但因为内存空间是连续的,所以在进行插入和删除操作时,会造...

shzwork
今天
4
0
Spring之invokeBeanFactoryPostProcessors详解

Spring的refresh的invokeBeanFactoryPostProcessors,就是调用所有注册的、原始的BeanFactoryPostProcessor。 相关源码 public static void invokeBeanFactoryPostProcessors(Configu......

cregu
昨天
4
0
ibmcom/db2express-c_docker官方使用文档

(DEPRECIATED) Please check DB2 Developer-C Edition for the replacement. What is IBM DB2 Express-C ? ``IBM DB2 Express-C``` is the no-charge community edition of DB2 server, a si......

BG2KNT
昨天
4
0
Ubuntu 18.04.2 LTS nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic)

平台:Ubuntu 18.04.2 LTS nvidia-docker2 版本:2.0.3 错误描述:在安装nvidia-docker2的时候报dpkg依赖错误 nvidia-docker2 : 依赖: docker-ce (= 5:18.09.0~3-0~ubuntu-bionic) 先看一下依......

Pulsar-V
昨天
4
0
学习笔记1-goland结构体(struct)

写在前面:若有侵权,请发邮件by.su@qq.com告知。 转载者告知:如果本文被转载,但凡涉及到侵权相关事宜,转载者需负责。请知悉! 本文永久更新地址:https://my.oschina.net/bysu/blog/3036...

不最醉不龟归
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部