python - Flask 端点 - 处理请求或端点本身中的数据?
问题描述
我目前正在研究一个烧瓶 API,并认为我对如何实现我的端点有一个误解。目前我这样处理我的请求:我有一个端点,然后处理请求传递的数据。
@api.route("/deleteitem")
class DeleteItem(Resource):
def delete(self):
item = request.get_json()["item"]
items = [x.get("item") for x in store]
if item in items:
index = items.index(item)
store.pop(index)
return {"message": "item deleted"}, 200
return {"message": "item not found"}, 404
在几乎每个教程中,这都是不同的处理方式:不是在请求正文中传递数据,而是直接通过端点完成,如下所示:
@api.route("/deleteitem/<string:item>")
class DeleteItem(Resource):
def delete(self, item):
items = [x.get("item") for x in store]
if item in items:
index = items.index(item)
store.pop(index)
return {"message": "item deleted"}, 200
return {"message": "item not found"}, 404
我的问题是:我做错了还是只是风格问题?两者似乎都有效,但老实说,我的 API 非常简单,但我不想嵌入糟糕的编码风格。什么是可取的,为什么?
解决方案
推荐阅读
- c# - __makeref 作为在 C# 中获取参考值的一种方式?
- python-3.x - pdb/ipdb 在 Python 3 的调试器中吞下异常
- c++ - 有没有办法通过“大于/小于”而不是“=”来定义“int”?
- django - 校验和在 Django 中的支付失败?
- python - 用于创建单个数据帧的循环,从多个 json 开始
- java - Java以不同的高度颠倒绘制矩形
- c# - 文本内容仅通过按钮
- akka.net - 在同一节点上的不同进程上运行 Akka.Net
- vb.net - KeyDown :单独检测控制键或用作修饰符的控制键
- javascript - Office.context.mailbox.displayNewMessageForm 无法在 Outlook Online 客户端中附加文件