问题标签 [quart]

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.

0 投票
0 回答
288 浏览

python - 如何验证 Quart websockets?

来自https://medium.com/@pgjones/websockets-in-quart-f2067788d1ee创建者的一篇中篇文章Quart

验证

在授权请求时,控制接受的能力最有用,因为它允许检查请求标头并接受升级或返回 401。一个简单的例子是,

但是客户端 javascript 是如何导致websocket.authorization属性被填充的呢?

var ws = new WebSocket('ws://' + 'user' + ':' + 'pass' + '@' + document.domain + ':' + location.port + '/ws');在过去的几年中似乎已被弃用,并且不支持 Websocket 的 HTTP 请求中的自定义标头。

0 投票
1 回答
420 浏览

websocket - 在 Quart 中与 websocket 进行双向通信

我希望能够在 Quart 中使用 WebSocket 来接收发送的任何消息,并发送我可能需要发送的任何消息。无法保证消息会在发送和接收之间交替。

例如,Quart 的 WebSockets 教程页面包含以下代码片段:

不知何故,我想修改while True循环中的代码,以便我可以检查是否有任何数据要接收,但如果没有,我将改为检查队列。

我希望只有在有东西要接收的情况下才能在套接字上等待接收(如果方法中有timeout参数,这可能可以实现receive),但这不是一个选项。

那么,如何await在更新的同时使用 WebSocket 进行await更新呢?

0 投票
1 回答
580 浏览

python - Python Quart/Hypercorn 流式响应导致 net::ERR_HTTP2_PROTOCOL_ERROR 200

我有一个 Quart 应用程序,我用它将响应流回客户端。我正在使用 asyncio.sleep 来延迟响应完成,如果我将延迟设置为 59 秒,一切正常。流完成没有任何问题。如果我将时间增加到 120 秒,则响应似乎超时。这是客户端接收到流的第一部分,但大约 60 秒后,浏览器在 Chrome 中抛出错误:net::ERR_HTTP2_PROTOCOL_ERROR 200。Firefox 抛出 TypeError。

我正在将 Hypercorn 与 Nginx 一起使用。

hypercorn config.py 文件内容如下:

nginx.conf 中的相关设置:

我不知道如何解决这个问题。

我找出了问题的根源。它与 Quart、Hypercorn 或 Nginx 无关。问题在于 Cloudflare 和 http2,它是由 WriteTimeout 引起的。请参阅此答案: net::ERR_HTTP2_PROTOCOL_ERROR 是关于什么的?

那么问题是,如何在 Cloudlfare 中改变这一点。

我没有将 Quart 配置为在 http2 中工作,这有帮助吗?

0 投票
0 回答
186 浏览

python - 如何从 Python-Quart 与 MongoDB 交互?

我正在构建一个小型 Web 服务,并且正在使用 Python Quart,这是 Flask 的异步版本。

Web 服务将从 MongoDB 获取数据,在其上运行一些操作并返回 JSON。在 Flask 上,我会使用 Flask-mongoalchemy 之类的东西。

有没有类似的库可以与 Quart 一起使用?将 MongoDB 与 Python Quart 集成的最佳方式是什么?

谢谢

0 投票
1 回答
86 浏览

python - 修改 quart.request - 可以接受吗?(Python API)

我需要在quart(python web 框架)中存储一些每个请求的指标和遥测数据(例如时间戳等)。修改quart.request和添加变量是否可以接受?

它似乎有效,并且类似于我在 Flask 中的做法,但我不确定它是否被认为是Quart.

背景是我想存储细粒度的遥测数据(即请求中某些事情发生时的时间戳),而不仅仅是总请求时间。

问候, 尼克拉斯

0 投票
1 回答
210 浏览

python - 异步 Python 服务器:启动时触发并忘记

我正在编写一个必须处理异步任务的服务器。对于异步代码,我宁愿坚持使用 asyncio,所以我选择使用 Quart[-OpenAPI] 框架和 Uvicorn。

现在,我需要master.resume()在服务器启动时运行一个任务(在下面的代码中),而不是等待它完成,即触发并忘记它。

我不确定是否可以使用 asyncio,因为我无法等待此任务,但如果我不等待,我会收到coroutine X was never awaited错误消息。按照此答案loop.run_until_complete()中的建议使用会阻塞服务器,直到任务完成。

这是我拥有的代码框架:

如果使用 asyncio/Quart 无法实现这一点,那么正确的方法是什么?

0 投票
1 回答
266 浏览

spring - 如何在 Spring Boot 中为 Quartz 表使用自定义表名

我正在使用带有 spring boot 2.x 的石英。我可以为给定的石英表使用自定义表名和自定义列名吗?我可以前缀,但我的要求是更改表的名称。

如果是,那么我怎样才能保持同步。

例如:我可以创建一个表,而不是qrtz_JOB_DETAILS(qrtz_在这里添加前缀) qrtz_myorg_jobDetails

0 投票
2 回答
344 浏览

python-3.x - asyncio.Queue 作为像 Quart 这样的网络服务器中的生产者-消费者流

是否可以将 asyncio.Queue 与Quart之类的网络服务器一起使用来在生产者和消费者之间进行通信?

这是我想要做的......

这工作正常。但我不确定这是否是一个好习惯,因为我很困惑如何(在我的代码中)执行以下步骤。

编辑-1:

我尝试使用@app.after_serving, 和一些logger.debug语句。

hypercorn但是在正常关闭时不会打印调试语句。所以,我不确定在关闭@app.after_serving期间是否实际调用了装饰的函数(关闭)。

这是hypercorn关机期间的消息

我使用 akill -SIGTERM <PID>来表示进程正常关闭。

0 投票
1 回答
133 浏览

java - 无法使用不同的作业名称和组运行同一类,同时运行

我正在研究石英调度程序。我创建了一个实现 Job MyClass 的类(com.test.job.MyClass),其中包含一些在调度时传入 DataMap 的动态值。基于数据映射值,我需要通过传递此数据映射值来调用其余 API。

所以在我的数据库中,我定义了具有 className、jobName、groupName 和 operationValue 的作业。我在 DB 中定义了多个条目

就像 JOB-1 是

就像 JOB-2 一样

我正在尝试安排这两个具有相同 Cron 表达式的作业。但只有 TEST1 作业正在执行。Test2 不是。甚至jobName都不一样

在实现的类中,我可以看到 ADD 操作,所以这意味着只运行了 TEST1。我希望两者都应该运行。

0 投票
1 回答
198 浏览

python - Hypercorn / Quart中的uWSGI“缓冲区大小”等效项

晚安,我是 Hypercorn / uvloop / Quart 的新手,我是否必须知道 Hypercorn 中的哪个配置相当于 uWSGI 的“缓冲区大小”?一个细节,我的应用程序不会使用 websockets。在某些情况下,会发送一些带有大正文和大标题的大请求。我在 uWSGI 中使用“缓冲区大小”解决了这个问题,我想知道 Hypercorn / uvloop 中的等效配置吗?