flask 接口get-post

简介: flask 接口get-post

1. 前言

  1. flask 也被攻克了
  2. 有了这个玩意 pyhton 可以很方便的写接口 或者页网页
  3. 这篇文章主要写接口
  4. 安装是必须的必 不在说了

2.  直接上代码 get

import json
# 创建 Flask 应用,__name__ 是当前模块的名称,
# 用于指定 Flask 应用的根目录。
app = Flask(__name__)
# 默认都是 get 请求
# 装饰器定义路由 / 根路径
# 多个路由:
@app.route("/")
@app.route("/home")
def index():
    return 'hello Flask 热更新'
# 如果返回 列表和字典报错 用  jsonify(列表)
@app.route("/login")
def login():
    return {
        "code": 1000,
        "msg": '登录成功',
        "data": {
            "name": 'yzs',
            "age": 18
        }
    }
# 基础用法<username> 
# 限制类型<int:age>
# 限制类型额范围<any(a,b,c):name>  元组限定范围 abc中的一个
@app.route("/login/<any(a,b,c):username>")
def login_p(username):
    print('login-username', username)
    return {
        "code": 1000,
        "msg": '地址参数 成功',
        "data": {
            "name": username,
            "age": 18,
        }
    }
#  既可以是get 也可以是post请求
@app.route("/register", methods=['POST', 'GET'])
def register():
    if request.method == "POST":
        print('post---请求')
    else:
        print('get--请求')
    return [1, 2, 526]
#  get 参数  http://yzs.com/search?qeury='演示'
@app.route("/search")
def search():
    kw = request.args.get('query')
    print('参数', request.args)
    return {
        "code": 1000,
        "msg": 'search 成功',
        'kw': kw
    }
# 返回的 是从json文件读取的数据
@app.route('/json', methods=['GET'])
def get_data():
    with open('./movie.json', 'r') as file:
        data = json.load(file)
    return jsonify(data)
if __name__ == '__main__':
    # host port debug 默认 5000
    # threaded 是否多线程
    app.run(port=8081, debug=True)

3. post

# **********************************  post
@app.route('/post_json', methods=['POST'])
def post_json():
    # data = request.get_json()
    data = request.json
    print('post---------data-:', data)
    # 处理参数...
    return {'msg': '客户端是 json 字符串的形式',
            'name': data['name']}
  • 前端发起 请求演示

postjson = () => {
        const url = '/post_json';  // 请求的URL
        const data = {             // JSON 格式的数据
            name: 'yzs'
            age: 18,
        };
        fetch(url, {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json',
            },
            body: JSON.stringify(data),
        })
            .then(response => response.json())
            .then(data => {
                // 处理响应数据
                console.log(data);
            })
            .catch(error => {
                // 处理请求错误
                console.error(error);
            });
    }

@app.route('/postStrObj', methods=['POST'])
def post_data():
    param1 = request.form.get('name')
    param2 = request.form.get('age')
    print('param1',param1)
    # 处理参数...
    return {
        'name': param1,
        "age": param2
    }
  • 前端是 js 演示

postStrObj = () => {
        fetch('/postStrObj', {
            method: 'POST',
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            },
            body: `name=${username.value}&age=value2`
        })
            .then(response => response.json())
            .then(data => {
                console.log(data);
            });
    }

4. 跨域

全部允许跨域

from flask_cors import CORS ,cross_origin
app = Flask(__name__)
CORS(app, resources={r"/*": {"origins": "*"}})

单个接口跨域设置

@app.route("/list")
@cross_origin()
def get_list():
    return  [1,34,6,8,8,9]

参考资料


初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉


相关文章
|
3月前
|
JSON 数据格式 Python
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
|
5月前
|
前端开发 数据库 Python
使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
【1月更文挑战第13天】使用 Python 的 Web 框架(如 Django 或 Flask)来建立后端接口,用于处理用户的请求,从数据库中查找答案并返回给前端界面
227 7
|
4月前
|
JSON 安全 API
如何高效编写API接口:以Python与Flask为例
构建RESTful API的简明教程:使用Python的Flask框架,从环境准备(安装Python,设置虚拟环境,安装Flask)到编写首个API(包括获取用户列表和单个用户信息的路由)。运行API服务器并测试在`http://127.0.0.1:5000/users`。进阶话题包括安全、数据库集成、API文档生成和性能优化。【6月更文挑战第27天】
100 7
|
3月前
|
文字识别 Java Python
文本,文识10,springBoot提供RestTemplate以调用Flask OCR接口,调用flask实现ocr接口,用paddleocr进行图片识别云服务技术,单个paddleocr接口有影响
文本,文识10,springBoot提供RestTemplate以调用Flask OCR接口,调用flask实现ocr接口,用paddleocr进行图片识别云服务技术,单个paddleocr接口有影响
|
3月前
|
文字识别 Java Python
文本,文识08图片保存()上,最方便在于整体生成代码,serivce及实体类,base64编码保存图片文件,调用flask实现内部ocr接口,通过paddleocr识别,解析结果,base64转图片
文本,文识08图片保存()上,最方便在于整体生成代码,serivce及实体类,base64编码保存图片文件,调用flask实现内部ocr接口,通过paddleocr识别,解析结果,base64转图片
|
3月前
|
JSON 文字识别 数据格式
文本,文字识别,Flask实现内部接口开发,OCR外部接口的开发,如何开发一个识别接口,通过post调用,参数是图片的路径,内部调用,直接传图片路径就行
文本,文字识别,Flask实现内部接口开发,OCR外部接口的开发,如何开发一个识别接口,通过post调用,参数是图片的路径,内部调用,直接传图片路径就行
|
5月前
|
测试技术 Apache 项目管理
软件测试|探索Flask接口路由技术:构建灵活可拓展的Python应用
软件测试|探索Flask接口路由技术:构建灵活可拓展的Python应用
48 1
|
12月前
|
API
flask-restplus接口地址404问题
问题:书写 仪表盘的图表配置信息保存 操作的接口时,想通过querystring 的方式来获取id值,因此定义 的接口 路由是/api/dashboard/chart/handle/?id=int:id这样的 路由地址,其中 int:id 这里是必需要传递的一个value 值,通过这样的方式来获取到id值,但在使用过程中,请求该接口,一直返回404. 解决:使用flask-restplus...
47 1
|
机器学习/深度学习 JSON 缓存
flask部署深度学习api接口
flask部署深度学习api接口
11551 3