Flask框架实现RESTful API示例与技术解答

作者:佚名 上传时间:2023-11-22 运行软件:Visual Studio Code 软件版本:Python 3.x, Flask 2.x 版权申诉

Flask是一个轻量级的Python Web框架,支持快速构建Web应用程序。RESTful API是一种设计风格,通过HTTP请求方法进行交互,实现资源的增删改查操作。本示例将展示如何使用Flask框架创建RESTful API,并解答常见技术问题。

from flask import Flask, jsonify, request

app = Flask(__name__)

# 模拟数据存储
tasks = [
    {'id': 1, 'title': '任务1', 'description': '完成任务1', 'done': False},
    {'id': 2, 'title': '任务2', 'description': '完成任务2', 'done': False},
]

# 获取所有任务
@app.route('/tasks', methods=['GET'])
def get_tasks():
    return jsonify({'tasks': tasks})

# 获取特定任务
@app.route('/tasks/<int:task_id>', methods=['GET'])
def get_task(task_id):
    task = [task for task in tasks if task['id'] == task_id]
    if len(task) == 0:
        return jsonify({'error': '找不到任务'}), 404
    return jsonify({'task': task[0]})

# 创建任务
@app.route('/tasks', methods=['POST'])
def create_task():
    if not request.json or 'title' not in request.json:
        return jsonify({'error': '请求格式错误'}), 400
    task = {
        'id': tasks[-1]['id'] + 1,
        'title': request.json['title'],
        'description': request.json.get('description', ""),
        'done': False
    }
    tasks.append(task)
    return jsonify({'task': task}), 201

# 更新任务
@app.route('/tasks/<int:task_id>', methods=['PUT'])
def update_task(task_id):
    task = [task for task in tasks if task['id'] == task_id]
    if len(task) == 0:
        return jsonify({'error': '找不到任务'}), 404
    if not request.json:
        return jsonify({'error': '请求格式错误'}), 400
    task[0]['title'] = request.json.get('title', task[0]['title'])
    task[0]['description'] = request.json.get('description', task[0]['description'])
    task[0]['done'] = request.json.get('done', task[0]['done'])
    return jsonify({'task': task[0]})

# 删除任务
@app.route('/tasks/<int:task_id>', methods=['DELETE'])
def delete_task(task_id):
    task = [task for task in tasks if task['id'] == task_id]
    if len(task) == 0:
        return jsonify({'error': '找不到任务'}), 404
    tasks.remove(task[0])
    return jsonify({'result': True})

if __name__ == '__main__':
    app.run(debug=True)

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
FlaskRESTful API
Flask是一个轻量级的Python Web框架,支持快速构建Web应用程序。RESTful API是一种设计风格,通过HTTP请求方法进行交互,实现资源的增删改查操作。本示例将展示如何使用Flask
Python 3.x, Flask 2.x
Visual Studio Code
2023-11-22 17:34
FlaskRESTful API
Flask是一个轻量级的Python Web框架,用于快速构建Web应用程序。通过示例代码展示如何使用Flask实现RESTful API,包括路由设置、请求处理和响应返回等功能。技术解答包括常见问题
Flask 2.0.1
Python 3.9
2023-12-16 06:08
FlaskRESTful API
这个示例展示了如何使用Flask框架创建RESTful API。它演示了基本的HTTP请求(GET、POST、PUT、DELETE)以及数据库操作(使用SQLite)。通过Flask框架提供的路由和视
Flask 2.0.1, SQLAlchemy 1.4.25, Python 3.9
在文本编辑器或集成开发环境中编写,如VSCode、PyCharm等。
2023-11-10 17:29
FlaskRESTful API开发
Flask是一个轻量级的Python Web框架,用于快速构建Web应用程序和API。RESTful API是一种设计风格,通过HTTP请求对资源进行操作。这个示例将展示如何使用Flask框架创建RE
Flask 2.0.1
Python 3.8
2023-11-27 05:32
Flask创建RESTful API
这个示例展示了如何使用Flask框架创建一个简单的RESTful API。它实现了GET、POST、PUT和DELETE请求,允许用户对资源进行基本的 CRUD 操作。通过定义路由和处理函数,Flas
Flask 2.0.1
Python 3.9
2023-12-04 03:07
GrailsRESTful API
Grails框架提供了简洁而强大的工具来构建RESTful API。通过示例展示如何使用Grails来创建和管理API端点,同时提供技术上的解答与最佳实践。// 在Grails应用中创建一个REST
Grails 4.0.12
Grails应用
2023-11-28 17:38
SlimRESTful API
Slim框架是一款轻量级的PHP微框架,用于构建简单而强大的Web应用程序。本示例演示如何使用Slim框架创建RESTful API,并提供相关技术解答。<?php// 引入Slim框架r
Slim框架 3.x
PHP
2023-11-22 04:26
YiiRESTful API
Yii框架提供了强大的RESTful API支持,能够快速搭建API服务。RESTful API是一种基于HTTP协议的API设计风格,可以实现资源的增删改查。Yii框架提供了易用的工具和约定,帮助开
Yii 2.x
Yii框架
2023-12-08 10:09
Flask创建RESTful API
Flask是一个轻量级的Python Web框架,用于快速构建Web应用和API。通过示例展示如何使用Flask创建RESTful API,实现GET和POST请求的数据交互,包括路由设置、请求处理和
Flask 2.0.1
Python 3.9.6
2023-11-11 11:24
GrailsRESTful API
Grails是一个基于Groovy语言的开源Web应用框架,可以快速构建高性能的应用程序。它内置了强大的特性,包括对RESTful API的支持。通过Grails,开发者可以轻松地创建和管理RESTf
Grails 4.x
Grails应用程序
2023-11-20 14:53