问题标签 [starlette]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - FastAPI/Pydantic 接受任意发布请求正文?
我想创建一个 FastAPI 端点,它只接受任意发布请求正文并返回它。
如果我发送{"foo" : "bar"}
,我想{"foo" : "bar"}
回来。但我也希望能够发送{"foo1" : "bar1", "foo2" : "bar2"}
并取回。
我试过:
但无论我发送什么,它都会返回一个空字典。
有任何想法吗?
reactjs - 从两个不同的静态构建目录提供 React 构建文件
我目前正在创建一个反应网页,使用 starlette 作为我的网络服务器框架,它连接我的数据库并提供 API。为了改善代码分离和不必要的文件加载,我将我的页面分成两个单独构建的反应页面。一个用于验证前的登录页面,一个用于验证完成且用户拥有有效令牌后的主页。这样做的问题是,两个反应网页都将 GET 请求作为示例发送到:/static/js/2.91da4595.chunk.js
.
我想知道在查找静态文件时是否可以更改 react 将请求发送到的位置。因此,例如,我的登录页面将/otherstatic/js/2.91da4595.chunk.js
改为。
可能有一种更优雅的方法可以达到我想要的目的,所以请随意使用不同的方法。如果需要任何进一步的解释或代码,请告诉我,我可以将其添加到这篇文章中。
python - 带有正斜杠的 Starlette/FastApi 路由路径组件
我在 Starlette/FastApi 中定义了一条路线 -
我在路径组件中有一些正斜杠,我想发出以下请求以访问post_method
curl -X POST "http://127.0.0.1:5000/api/path%2Fpath" -H "accept: application/json" -d ""
导致 Starlette/Fastapi 日志中出现 404 错误。
INFO: 127.0.0.1:50233 - "POST /api/path/path HTTP/1.1" 404
如何获得正确的路径组件?
python - Python Starlette 长时间运行的作业
我想在启动服务器时添加一个长时间运行的作业,请参阅下面的我当前的实现。
它目前正在工作,但我不确定它是否是正确/正确的方法,有什么建议吗?
python - 调用`async for in`后如何获得异步生成器的下一次迭代
使用 FastAPI 我试图检测StreamingResponse是否已完全被客户端使用或是否已取消。
我有以下示例应用程序:
这似乎是“消耗”异步生成器中的第async for in generator
一个astreamer
。StopAsyncIteration
在该循环之后,即使生成器是上面定义的“无限” ,进一步尝试进行下一次迭代也会失败并出现异常。
我已经查看了PEP-525,我唯一看到的是,如果将异常抛出到生成器中,它将导致任何进一步尝试从生成器中读取以抛出 StopAsyncIteration 异常,但我看不到那个将会发生。至少,我在 Starlette 的 StreamingResponse类中没有看到这一点(它似乎对“内容”没有多大作用)。生成器在执行完之后不会“释放”async for in gen
吗?
sqlalchemy - 使用 python-asyncio 数据库时如何获取 LAST INSERT ID
我正在尝试使用以下堆栈将对象持久保存在数据库中:Starlette、SQLArchemy和Databases。
如何获得 LAST INSERT ID?
python - 使用 FastAPI 在基于 Python 的 GraphQL 服务器中进行身份验证
我在使用 FastAPI 构建的 GraphQL 服务器中实现身份验证时遇到问题。以前,我们使用的是 REST,但现在我们正在切换到 GraphQL,我想知道如何实现它。之前,我们有不同的路由器,并且使用 FastAPI 可以很容易地使用依赖关系检查基于路由的身份验证,如下所示。我们在授权标头中发送一个令牌,我们在后端解码它并取回 user_id,然后我们可以在不同的端点中使用它。
我想知道在这里使用 GraphQL 是如何工作的。我们使用Graphene,我查看了Starlettes Authentication Examples以及设置GraphQl的介绍
例如,假设我现在只想验证突变请求而不是查询请求。此外,我想访问每个解析器中的 user_id。最好的方法是什么?
python - 联合类型无法在运行时解析对象类型
我正在使用 Starlette 和 Graphene 使用 Python 设置 GraphQL 服务器,但遇到了一个我找不到解决方案的问题。石墨烯文档没有详细介绍我正在尝试实现的联合类型。我根据石墨烯文档设置了一个最小示例,您可以运行它来复制这个问题
如果您然后转到http://localhost:8080/graphq并输入以下查询
我收到这个错误
我现在坚持。也许有人已经这样做了并且可以提供帮助?如何在运行时解决此问题。我已经尝试过不同的方法,例如我更改了Character和RootQuery类:
导致
任何想法将不胜感激!