编程语言
首页 > 编程语言> > flask实现python方法转换服务

flask实现python方法转换服务

作者:互联网

一.flask安装

pip install flask 

 

二.flask简介:

flask是一个web框架,可以通过提供的装饰器@server.route()将普通函数转换为服务

flask是一个web框架,属于微框架,框架很轻量,更新依赖小,依赖于werkzeug,一个wsgi工具包(web server gateway interface),为python语言定义的web服务器和web应用程序或框架之间的一种简单而通用的接口

 

三 flash实现python脚本web服务化-get方法

import flask,json
from flask import request

#创建一个服务,将当前这个python文件作为一个服务
server = flask.Flask(__name__)
#使用装饰器@server.route()可以将普通的函数转换为服务登录的路径、请求方法
@server.route('/login',methods=['get','post'])
def login():
    #获取url请求传递的数据
    username = request.values.get('username')
    #获取url请求传递密码、明文
    pwd = request.values.get('pwd')
    #判断用户名、密码都不能为空
    if username and pwd:
        if username=='xiaoming' and pwd =='111':
            resu={'code':200,'message':'登录成功'}
            return json.dumps(resu,ensure_ascii=False) #将字典转换为json
        else:
            resu = {'code':-1,'message':'账户密码错误'}
            return json.dumps(resu,ensure_ascii=False)
    else:
        resu={'code': 1001, 'message': '登录成功'}
        return json.dumps( resu, ensure_ascii=False )

if __name__ == '__main__':
    server.run(debug=True,port=8888,host='0.0.0.0')#指定端口、host,0.0.0.0代表不管几个网卡,任何ip都可以访问

网页调用查看结果:

1.无用户登录成功,code:1001

2.用户登录成功

3.用户登录失败

 四 flash实现python脚本web服务化-post方法

from flask import Flask, request, jsonify
import json
app = Flask(__name__)
app.debug = True
@app.route('/add/test',methods=['post'])
def add_stu():
    if  not request.data:   #检测是否有数据
        return ('fail')
    student = request.data.decode('utf-8')
    #获取到POST过来的数据,因为我这⾥传过来的数据需要转换⼀下编码。根据晶具体情况⽽定
    student_json = json.loads(student)
    a=student_json["key"]
    #调用数据处理的核心方法
    res=getData(a)
    student_json["key"]=res
    #把区获取到的数据转为JSON格式。
    return jsonify(student_json)
    #返回JSON数据。

def getData(parameter):
    response = f"hello {parameter} world"
    return response

if __name__ == '__main__':
    app.run(host='127.0.0.1',port=8800)

查看postman方法的调用:

 

 

 

 

 

标签:__,web,转换,flask,resu,python,json,return
来源: https://www.cnblogs.com/mrwhite2020/p/16320148.html