Flask python开发篇: 写一个简单的接口

第一步:新建flask项目

参考使用pycharm新建一个项目
打开pycharm,根据下面图中箭头顺序,新建一个flask的项目;
在这里插入图片描述

第二步:运行项目,

安装成功以后,会有个app.py文件,打开以后,运行它;
在这里插入图片描述
可以使用右上角的运行按钮运行;也可以在文件内右击运行,如下图:
在这里插入图片描述

运行以后,会出现访问地址,这时候浏览器就能打开访问了
在这里插入图片描述

第三步:编写自己的第一个接口

from flask import Flask, request, jsonifyapp = Flask(__name__)# 假设博客文章数据存储在一个列表中
posts = [{"id": 1, "title": "Hello World", "content": "This is the first blog post."},{"id": 2, "title": "Introduction to Flask", "content": "A tutorial on using Flask to build web applications."}
]# 获取所有博客文章列表
@app.route('/api/posts', methods=['GET'])
def get_posts():return jsonify(posts)# 获取单篇博客文章
@app.route('/api/posts/<int:post_id>', methods=['GET'])
def get_post(post_id):post = next((p for p in posts if p["id"] == post_id), None)if post:return jsonify(post)else:return jsonify({"message": "Post not found"}), 404# 创建新的博客文章
@app.route('/api/posts', methods=['POST'])
def create_post():data = request.get_json()if "title" in data and "content" in data:new_post = {"id": len(posts) + 1,"title": data["title"],"content": data["content"]}posts.append(new_post)return jsonify(new_post), 201else:return jsonify({"message": "Invalid data"}), 400# 更新博客文章
@app.route('/api/posts/<int:post_id>', methods=['PUT'])
def update_post(post_id):post = next((p for p in posts if p["id"] == post_id), None)if post:data = request.get_json()post["title"] = data.get("title", post["title"])post["content"] = data.get("content", post["content"])return jsonify(post)else:return jsonify({"message": "Post not found"}), 404# 删除博客文章
@app.route('/api/posts/<int:post_id>', methods=['DELETE'])
def delete_post(post_id):global postsposts = [p for p in posts if p["id"] != post_id]return '', 204if __name__ == '__main__':app.run()

这里假设数据存储在一个列表里,并不是从数据库中取出的,先跑起来哈,下一篇我再分享怎么连接数据库;

这时候访问http://127.0.0.1:5000/api/posts,就能获取到数据了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/521456.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Rethinking Data Augmentation for Image Super-resolution

文章目录 Rethinking Data Augmentation for Image Super-resolution:1.概述2.一些现有方法的分析3.cutblur4.MOA 各种策略的混合5.降噪6.cutblur 代码 Rethinking Data Augmentation for Image Super-resolution: A Comprehensive Analysis and a New Strategy 1.概述 根据…

springcloud容错机制改进

文章目录 Spring Cloud的容错机制改进常见方案示例 Spring Cloud的容错机制改进常见方案 Spring Cloud的容错机制改进常见方案主要包括以下几个方面&#xff1a; 替换或升级熔断器组件&#xff1a; 从Hystrix迁移到其他高性能的熔断器&#xff1a;由于Hystrix已停止维护&#…

案例研究|辛格林电梯借助DataEase实现数据整合与智能展示

辛格林电梯&#xff08;SIGLEN&#xff09;于2012年创立&#xff0c;是电梯领域的领军品牌之一。该公司总部位于广东佛山&#xff0c;是全国首批获得A1级电梯制造资质的企业&#xff0c;拥有省级工程技术研究中心。辛格林电梯专注于研发和生产高品质电梯产品&#xff0c;涵盖别…

手持气象站的优势

【TH-SQ5】手持气象站作为一种便携式的气象监测设备&#xff0c;具有许多显著的优势&#xff0c;主要体现在以下几个方面&#xff1a; 便携性&#xff1a;手持气象站设计精巧&#xff0c;重量轻&#xff0c;易于携带&#xff0c;这使得用户能够轻松地在不同地点进行气象观测&a…

视觉和GPT再碰火花!CVPR`24 | RegionGPT:面向复杂区域理解的VLM(港大英伟达)

文章链接&#xff1a;https://arxiv.org/pdf/2403.02330 视觉语言模型&#xff08;VLMs&#xff09;通过将大语言模型&#xff08;LLMs&#xff09;与图像文本对集成&#xff0c;经历了快速的发展&#xff0c;但由于视觉编码器的空间意识有限以及使用缺乏详细的区域特定字幕的…

2.1 决策就是为了幸福

传统经济学中&#xff0c;决策是围绕着均衡展开的。 四个均衡 供求均衡 消费者均衡 生产者均衡 厂商均衡 解决的是如何确定产量&#xff0c;能够使厂商利润最大的问题 MR MC 边际收益等于边际成本&#xff0c;此时利润最大&#xff1b;使得边际收益等于边际成本的产量也就成…

Python实现时间序列分析Theta模型(ThetaModel算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 时间序列分析中的Theta模型(Theta Model)是由Athanasios Theodoridis在2008年提出的一种统计预测方法&…

K8S之实现业务的金丝雀发布

如何实现金丝雀发布 金丝雀发布简介优缺点在k8s中实现金丝雀发布 金丝雀发布简介 金丝雀发布的由来&#xff1a;17 世纪&#xff0c;英国矿井工人发现&#xff0c;金丝雀对瓦斯这种气体十分敏感。空气中哪怕有极其微量的瓦斯&#xff0c;金丝雀也会停止歌唱&#xff1b;当瓦斯…

【Java】线程池

在编程中经常会使用线程来异步处理任务&#xff0c;但是每个线程的创建和销毁都需要一定的开销。如果每次执行一个任务都需要开一个新线程去执行&#xff0c;则这些线程的创建和销毁将消耗大量的资源&#xff1b;并且线程都是“各自为政”的&#xff0c;很难对其进行控制&#…

或运算的理解

||或运算的含义&#xff1a;至少有一个成立&#xff1b; 根据德.摩根定律&#xff0c; 非(P 且 Q) (非 P) 或 (非 Q) 非(P 或 Q) (非 P) 且 (非 Q) 与运算取非等价于 各自取非&#xff0c;然后再或 例如&#xff1a; !(A&&B) !A||!B 或运算&#xff1a; 否一推一…

AIGC绘画关键词 - 写实少女

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分…

学术神器ChatGPT在论文分析中的妙用!

话语分析是一个广泛的研究领域&#xff0c;它关注的是人们在实际社会交际场景中使用的语言单位。话语分析旨在揭示语言、社会和文化之间的互动关系&#xff0c;以及话诺在构建意义、传递信息、维护社会关系和表达权力等方面的作用。话语分析包括对话分析、批判性话语分析、语篇…