当前位置: 首页 > 知识库问答 >
问题:

快速API -发布任何关键值数据

松阳泽
2023-03-14

我正在使用Fast.API我需要一个API来允许用户发布任何数据,键/值-我使用它来允许用户将自定义配置文件键/值字段添加到配置文件,其中键是字符串类型,值是字符串、数字、布尔值。

如何添加此类路由?

我正在使用这条路线,但不起作用:

@route.post('/update_profile')
def update_profile(acsess_token, **kargs):
    # I need here to get a dictionary like this: { "name": "John", "nick_name": "Juju", "birth_year": 1999, "allow_newsletter": False, }
    # and so on.... any key/value pair
    pass

我希望能够将任何一对键/值发布到该路由。有什么方法可以用FastAPI来实现吗?

非常感谢。

共有2个答案

闻人嘉悦
2023-03-14

在寻找一种方法之后,我找到了这个解决方案:

@route.post('/update_profile')
def update_profile(acsess_token, custom_fields: Optional[dict[str, Any]]):
   pass

这是迄今为止(对我来说)最好的解决方案。

松俊才
2023-03-14

您可以直接使用请求对象

from fastapi import FastAPI
from fastapi import Request

@app.post("/something")
async def get_body(request: Request):
    return await request.json()
 类似资料:
  • 问题内容: 尝试使用字典中的键快速填充字符串。 这将返回错误:’AnyObject’与字符串不同 也试过了 但得到:’String’不能转换为[String] 问题答案: Swift 3和Swift 4

  • 目前我知道烧瓶的问题,我想迁移到快速api,因为异步问题在api的响应中是可能的,但我一直在寻找,我没有发现烧瓶迁移在快速api中的等效性,烧瓶迁移主要负责捕获我们应用程序中已经建立的模型,如果在新模型中添加了一列,只应使用烧瓶数据库迁移和烧瓶数据库升级,它所做的是更新数据库中表的ddl,但我在快速api中找不到等效项 这是用烧瓶迁移的链接https://j2logo.com/tutorial-f

  • 如何强制GLFW管理每秒60次以上的键盘回调?也就是说,我希望GLFW的键盘处理速度取决于实际的FPS。这可能吗?

  • 问题内容: 在php中,我经常需要使用数组来映射变量…但是我似乎无法在一个内衬中做到这一点。cf范例: 这是一个小问题,但有时会不时出现错误……我不喜欢这样的事实,我什么都不用使用变量;) 问题答案: 我真的不会去理会这个额外的变量。但是,如果需要,也可以在使用后将其从内存中删除: 或者,您可以编写一个小函数: 并使用以下命令调用: 现在应该自动销毁该阵列。

  • 我需要将动态查询参数发送到 REST Web 服务 GET 方法[如下所示]。 主机:端口/应用程序?字段1=值1 消费者可以将参数发送到字段和值。每个字段都映射到值。 有了这种类型的要求,我无法在服务器端方法上编写一组有限的 QueryParams。 我在用python和fastapi 谢谢你。

  • 本文介绍 EOSFans API,以及用户认证的方式 (内容参考自 Ruby-China API)。 访问域名 https://eosfans.io OAuth 2 / API 认证 在使用 API 之前,你需要 注册应用 并获得可以 OAuth App 信息。并使用标准的 OAuth 2 实现登录,获得 access_token 信息。 OAuth 路径 /oauth/authorize /oa