教程二:使用Aestate操作数据库

Python教程二:使用Aestate操作数据库_Cx_轩的博客-CSDN博客​​​​​​

-------------------------------------------------------------------------------------------------------------------

前言

大家使用python实现了很多个功能方法,但是只能一个个文件执行去操作,不是很方便。我们可以搭建一个web服务,通过接口方式对外输出功能方法。

目前使用Flask作为web服务框架。

一、开始使用Flask

在我们的根目录下创建一个py文件,此处命名为cx_server.py,代码如下:

# Cx 初始化启用文件-py
print("启动Cx Python服务...")from flask import Flask
import json
from flask import jsonify
# 内部服务(自己提供的功能方法类)
from services import area_serviceapp = Flask(__name__)
# 返回json数据中文乱码解决
app.config['JSON_AS_ASCII'] = False@app.route('/')
def index():return "Cx Python服务启动成功..."@app.route('/getAreaList')
def getAreaList():data = json.loads(area_service.getAreaList())return jsonify({"data":data})if __name__ == '__main__':app.run()

注:其中的area_service在上一章有具体实现,只需要将上章中的逻辑封装为一个getAreaList方法即可。

方便大家参考我这边把代码贴出来。

area_service.py

from base.entity.area import Area
import pandasdef getAreaList():# 一定要先实例化area = Area()# 查询多条r2 = area.find_many("select a.*,coalesce(c.bank,'') bank from mcam_area a left join mcam_bankorder c on a.id = c.id")return r2.to_json()

二、注意事项

1.需要引入flask,若根据之前教程一安装方式可以不用下载flask,在安装时就已经预置了大量成熟的工具包,在此处只需要from flask import Flask即可。

2.flask作为服务在返回json数据时,会默认将中文转成Unicode编码格式,解决方案:

在根目录启动服务文件cx_server.py中添加配置:

app.config['JSON_AS_ASCII'] = False

3.cx_server.py在这个文件中,通过app.run()启动时,会出现错误提示:

WARNING: This is a development server. Do not use it in a production deployment.

解决方案:换一个启动方式,如下 :

在cx_server.py文件中引入

from gevent import pywsgi

if __name__ == '__main__':# 启动方式一# server = pywsgi.WSGIServer(('0.0.0.0',8085),app)# server.serve_forever()# 启动方式二app.run(port=8085,debug=True)

使用 启动方式一则不会有错误提示了。

Python教程三:使用Flask搭建web服务相关推荐

  1. flask之搭建web服务

    文章目录 前言 本地搭建flask服务 设置路由 设置请求方法和参数 如何搭建一个restful接口的服务 前言 flask是什么?众所周知 java有 spring 全家桶和sparkjava,Py ...

  2. 基于python Flask搭建mockServer服务

    前言: 为什么要用mockserver呢!我们自己内部接口需要使用微信,支付宝的支付功能,就需要验证和打钱才能返回固定的成功返回信息,成本太高,我们就可以用MockServer来模拟返回,绕过验证. ...

  3. Flask实现Web服务调用Python程序

    Flask实现Web服务调用Python程序 通过Web服务调用Python写的手写数字识别算法模型,得到手写数字识别结果. 项目场景: 项目需求:将客户端的请求经由Web服务器转发给Flask程序实 ...

  4. 新手如何使用docker搭建web服务环境

    做过开发的人对开发环境的安装.配置应该都不会太陌生,不管你做什么开发,对开发环境都会具有一定的依赖性的.对于 PHP 的 Web 开发来说,开发环境至少要有一个 Web 服务器(如 Apache.Ng ...

  5. 教程 | 用安卓手机搭建 web 服务器(一)—— 应用安装配置

    [2019.2.23 更新]:更新 BusyBox,Linux Deploy 软件 之前无意间看到了一篇<在安卓上部署服务器>的文章,正好最近换了新手机,正好最近在学 Python 和 H ...

  6. 使用 docker 搭建 web 服务环境

    本文目的 做过开发的人对开发环境的安装.配置应该都不会太陌生,不管你做什么开发,对开发环境都会具有一定的依赖性的.对于 PHP 的 Web 开发来说,开发环境至少要有一个 Web 服务器(如 Apac ...

  7. 教程 | 用安卓手机搭建 web 服务器(二)—— Nginx 安装配置

    上一步完成了必要的软件安装,接下来需要在 Linux 系统上安装 nginx. Nginx("engine x")是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能 ...

  8. 普歌-腾讯云短信+使用node发送短信(3种方法API、SDK)、封装工具、搭建web服务、写接口、调用接口发送短信、时效性判断、验证验证码的正确性(下)

    普歌-结合腾讯云短信服务+node搭建一个简单的发送短信web小项目 涉及技术: 腾讯云服务 后端服务:node+express 前端搭建:html+js 前言:本来这篇博客应该很早就发了,中间有一些 ...

  9. tomcat搭建web服务,lrc文件下载

    对于我这个开始学.net的人来说,对tomcat所知甚少.如今在Android练习中,需要用tomcat搭建web服务,并提供文件下载.视频中老师一带而过,我那个郁闷啊.没有办法,自己倒持一下,写这篇 ...

最新文章

  1. 利用查找替换批处理(附完整源码),进行高效重构
  2. hystrix原理_go-hystrix熔断机制
  3. JS 基础 —— JavaScript 关键字(keyword)与保留字
  4. MYSQL增量备份和全量备份脚本
  5. 老李分享:基于图像识别的跨平台的手机自动化测试方案
  6. thymeleaf 中select下拉回显
  7. php Tsocket read 0,thrift 返回 TSocket read 0 bytes 求助!!!!汗血宝马
  8. python异常捕获_Python 异常的捕获、异常的传递与主动抛出异常操作示例
  9. char* str = abc ;跟char str[] = abc;的区别
  10. python调用matlab函数_python调用matlab的m自定义函数方法
  11. Ribbon客户端负载均衡算法分析
  12. CSS 常用开发技巧
  13. linux ping mtu值,ping 包长度及 MTU
  14. Linux下使用dos2unix修改目录中文件格式
  15. java方法重载的好处_Java方法重载浅谈
  16. 文献综述是什么?怎么写?内附简洁模板
  17. 数据预处理_缺失值处理
  18. win8服务器备份在哪个文件夹,iPhone备份文件在哪里?Win8系统路径介绍
  19. rem布局百分比与rem的比例换算
  20. Ubuntu iwlwifi网卡驱动

热门文章

  1. 在Mac上使用SSH连接GitHub
  2. 小米真无线降噪耳机3和小米真无线降噪耳机3 Pro的区别
  3. 16 通道 65MSPS 14 bit 直流耦合 AD 采集卡/ FMC 子卡
  4. ChatGPT在智能客服产品落地探讨
  5. 一些前端的开发环境配置
  6. 红颜知己和蓝颜知己的区别
  7. 使用mac电脑生成 icns图标
  8. shell编程中空格的使用
  9. llalallalallalalla
  10. C语言三个点“...“符号含义之数组批量赋相同值