问题标签 [falconframework]

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 投票
1 回答
550 浏览

python - ImportError - 将 Falcon 应用程序部署到 AWS Elastic Beanstalk

部署到 Elastic Beanstalk 后出现 ImportError。我们正在运行 Falcon 来制作 API。我已成功使用 EB CLI 来初始化应用程序、创建环境并部署我的代码。我们使用 Python 2.7(目前)。

应用程序/环境的 AWS EB 站点说一切顺利,但是当我向 api 发送请求时,日志显示此错误:

在本地我的进口工作得很好。api 的相关部分如下所示:

我的 app.py 文件的第 12 行:

但是日志一直说这是一个 ImportError。对这里发生的事情有任何想法吗?我很困惑。

至于__init__.py文件导入模块;这是一个遗留代码库,我不确定改变它的含义是什么,除了测试会失败。

编辑

今天早上我尝试注释掉那些导入行,但这只会让我在下一次导入时出错:

我也完成了本文中推荐的操作。

0 投票
1 回答
102 浏览

python - 需要在 UWSGI 中加载多个 App

我正在用 Python Falcon 编写 Rest。我有一些场景,例如:

假设我有一个文件 A.py,它有一些 /a api,我还有一个文件 B.py,它有 api /b。我想在uwsgi中使用一些c.py来加载A.py和B.py ...所以一旦我在uwsgi中启动c.py ...这两个API都应该可以访问。

谢谢苏米特

0 投票
1 回答
665 浏览

python - 将 Beaker 与 Falcon、Python 一起使用

我正在使用 Python WSGI 框架 Falcon 来制作应用程序后端,并使用 Beaker 来处理会话管理。在生产中,我们将在 AWS 中使用 Gunicorn。

有一点我一直无法理解:

Gunicorn 将运行多个工作程序,这是否意味着环境变量对于发出请求的不同客户端仍然存在?换句话说,烧杯会话是否仅适用于一个客户端,或者它是否可用于在同一个 Gunicorn 工作实例中发出请求的多个客户端?

这就是我从阅读中理解会话的方式:

一个人登录到我的应用程序,并将 user_id 添加到与 Beaker 的会话中。来自同一客户端的未来请求将将此 user_id 存储在会话字典中。现在,来自该客户端的任何未来请求都将能够访问存储在会话中的变量。每个客户端都有自己的会话数据。

我是否正确理解了这一点?

当前的方法是在需要更多用户信息时向客户端(成功登录时)返回一个 id 以传递给后端。

0 投票
2 回答
2787 浏览

python - 在 falcon Python 中分隔路线的正确方法是什么?

文档中提供的示例描述了具有一个或几个路由的应用程序。每个 url 路径都有自己的类。对于有很多路线的情况,最佳做法是什么?例如,我有以下 RESTFul 结构:

本地主机:8000/my_part/A

本地主机:8000/my_part/B

本地主机:8000/my_part/A/默认

本地主机:8000/my_part/B/special

等等。

我应该怎么办:

  1. 为每个路径创建它自己的类
  2. 为“my_part”创建单个类并以某种方式区分该类中的 A、B(例如剥离 req.uri)
  3. 别的东西。

请注意,“默认”和“特殊”不是变量,而是实际路由。

0 投票
0 回答
62 浏览

python - 为什么 falcon 在 cpython 3.5 上比在 cpython 2.7 上慢 25%

我从猎鹰主页上截取了以下图片: https ://falconframework.org/

猎鹰表演

我们可以看到,python 2.7 上的 falcon 每秒运行 24k 请求,而在 python 3.5 上,它每秒运行 18k 请求。可能是什么原因?这是 python 3.5 本身的问题吗?

0 投票
1 回答
1590 浏览

python - 类型错误:do_before() 缺少 1 个必需的位置参数:'resp'

我正在尝试将钩子附加到路线上。尽管我正在关注文档中的代码,但还是有问题,无论我在其中做什么,钩子都会返回错误。

组件/counter.py:

应用程序.py:

当我使用gunicorn和 request运行localhost:8000/counter它时,它返回:

TypeError: do_before() missing 1 required positional argument: 'resp'

0 投票
1 回答
3474 浏览

python - http: error: ConnectionError: ('Connection aborted.', error(32, 'Broken pipe')) 在对 URL 进行 POST 请求时:

我使用 Falcon 实现了一个 API,它使用 multipart/form 将文件上传到我的服务器。当文件很小 (~1MB) 时,POST 请求可以正常工作。但是当文件很大(~20MB)时,POST 失败并出现以下错误。

有关如何解决此问题的任何反馈?

错误:

http: error: ConnectionError: ('Connection aborted.', error(32, 'Broken pipe')) 在对 URL 进行 POST 请求时: http://...:49160/api/upload

这是我的请求命令行: 使用 httpie:

这是我的 on_post 函数:

谢谢,

卡洛斯

0 投票
1 回答
1405 浏览

python - 对象在猎鹰中没有属性“API”错误

我正在使用python 2.7.6falcon ubuntu 14.04web 框架并尝试运行简单的 hello world 程序。但是在运行此示例时会出现以下错误。对此有任何想法吗?

代码 :

错误:

0 投票
2 回答
2432 浏览

celery - 带有芹菜的猎鹰蟒蛇示例

我如何从 json 有效负载(发布数据)获取任务 ID 并向其添加路由

0 投票
1 回答
731 浏览

python - requests.get 到 localhost 超时

我正在尝试从一个处理程序向另一个处理程序发出 http 请求,但它正在超时。为什么?使用请求库有效,但不适用于 127.0.0.1

我得到这个错误日志

[2017-02-02 20:41:05 +0100] [27515] [CRITICAL] WORKER TIMEOUT (pid:27544)