问题标签 [sanic]

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 投票
2 回答
2085 浏览

python - Sanic (asyncio + uvloop webserver) - 返回自定义响应

我从Sanic开始...

Sanic 是一个类似 Flask 的 Python 3.5+ Web 服务器,它的编写速度很快。(...) 除了类似于 Flask 之外,Sanic 还支持异步请求处理程序。这意味着您可以使用 Python 3.5 中新的闪亮的 async/await 语法,使您的代码无阻塞且快速。

...直到这一点,关于如何使用他的例子很少,文档也不是很好。

按照文档基本示例,我们有

例如,如何返回带有自定义状态代码的自定义响应?

0 投票
2 回答
905 浏览

python-3.x - Sanic 是否有 'url_for()' 功能(如在烧瓶中)?

我正在尝试将一个简单的烧瓶应用程序移植到 sanic,并使用sanic 和 jinja的示例。

sanic 有url_for()烧瓶之类的功能吗?

0 投票
0 回答
919 浏览

python - Sanic Server Python 3.5 创建异步队列以写入 AWS SQS

测试 Sanic,目前有一些路由,当命中时会触发对 SQS 的写入。尝试通过将信息添加到队列中来使写入异步,然后“独立”(以非阻塞方式)使用 Sanic 服务器返回的响应。

下面是我到目前为止的代码。它调用了 SQS,但是似乎我在使用错误的循环/创建多个循环时出错-> 我收到一条错误消息,指出“循环参数必须与未来一致”,并且服务器只是挂起,根本没有返回响应。

此外,Sanic 使用 uvloop,我不确定如何/是否应该将队列集成到 uvloop 而不是单独的 asyncio 循环中。Sanic 服务器通过传递一个 uvloop (uvloop.new_event_loop()) 来实例化。

0 投票
1 回答
1155 浏览

python - Sanic 框架中的非阻塞请求

我正在尝试Sanic并运行 Hello World 应用程序,但我在请求处理程序中添加了睡眠:

但是,当我运行它时,它仍然会阻塞每个请求:

在两个单独的终端中:

我认为 Sanic 的想法是能够异步处理所有请求,并且在一个完成处理下一个请求之前不会阻塞。我在这里错过了什么吗?

0 投票
2 回答
2425 浏览

python - 从多个线程更新全局字典

我有以下应用程序运行调度程序以定期更新全局变量(dict)的状态:

5秒间隔作业中导入的函数在同一目录下的不同文件中:

然而,这并没有像我希望的那样工作。导入的函数会更新清单,但更改永远不会传播到原始字典,因此要么bump_inventory正在处理副本,inventory要么永远不会在函数范围之外更新它。在两个不同的终端:

这样做的正确方法是什么?

0 投票
1 回答
74 浏览

json - 当我返回类时出现 AttributeError

我将sanic用于我的 API,并将 peewe 用作 ORM。

我想为 json 响应创建助手,但我得到了错误

AttributeError: 'JsonResponse' object has no attribute 'all_records'

get控制器中的方法

和我的helper班级

0 投票
4 回答
2535 浏览

python - 从 Sanic 应用程序的蓝图中检索配置

我有一个 Sanic 应用程序,想app.config从蓝图中检索它MONGO_URL,我会将它从蓝图中传递给存储库类。

但是,我找不到如何进入app.config蓝图。我还检查了 Flask 解决方案,但它们不适用于 Sanic。

我的app.py

我的auth blueprint

0 投票
1 回答
518 浏览

python - 我可以将古玩与 sanic 一起使用吗?为什么不?

我尝试在我的sanic应用程序中使用异步原始套接字,Python 3.6 并且真的很惊讶来自异步函数curio在 sanic 异步上下文中不起作用。最小的概念证明:

此代码在任何 http 请求上生成核心转储

0 投票
1 回答
442 浏览

python - 重复错误:Sanic App 中的 NoneType

我不断Error: Nonetype从 Sanic 应用程序中获取信息,但我无法确定原因。

我的代码:

2017-05-13 15:10:03,454:信息:快点 @ http://0.0.0.0:8002
2017-05-13 15:10:03,456:信息:启动工人 [30662] 2017-05-13
15 :11:19,579:错误:无类型

我该如何解决这个问题?

0 投票
1 回答
1834 浏览

python - python unitests for sanic app

我正在使用 peewee ORM 和 sanic(sanic-crud) 作为应用服务器构建 CRUD REST API。一切正常。我为此写了几个单元测试用例。

但是,我在运行单元测试时遇到了问题。问题是 unittests 启动了 sanic 应用程序服务器并停在那里。它根本没有运行单元测试用例。但是,当我手动按 Ctrl+C 时,sanic 服务器会终止并开始执行单元测试。因此,这意味着应该有一种方法可以启动 sanic 服务器并继续运行单元测试并在最后终止服务器。

有人可以取悦我为 sanic 应用程序编写单元测试用例的正确方法吗?

我也遵循了官方文档,但没有运气。 http://sanic.readthedocs.io/en/latest/sanic/testing.html

我试过以下

从restapi.py