问题标签 [chalice]

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 回答
618 浏览

json - 在圣杯中使用 POST 时出现 json 解码错误

当我尝试在圣杯中使用 app.current_request.json_body 时,出现解码错误:

回溯(最后一次调用):文件“/var/task/chalice/app.py”,第 659 行,在 _get_view_function_response response = view_function(**function_args) 文件“/var/task/app.py”,第 34 行,在 post_item 数据 = app.current_request.json_body 文件“/var/task/chalice/app.py”,第 303 行,在 json_body self._json_body = json.loads(self.raw_body) 文件“/var/lang/lib/python3 .6/json/ init .py",第 354 行,加载返回 _default_decoder.decode(s) 文件“/var/lang/lib/python3.6/json/decoder.py”,第 339 行,解码 obj,结束= self.raw_decode(s, idx=_w(s, 0).end()) File "/var/lang/lib/python3.6/json/decoder.py", line 357, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) 来自 None json.decoder。JSONDecodeError:期望值:第 1 行第 1 列(字符 0)

数据有多简单并不重要。示例:{"Company":"ABC"} 或 {}。

从 API Gateway 中的以下代码可以看出,我所做的只是返回已发送的数据,所以我认为这不是问题所在:

有谁知道我可能做错了什么?

0 投票
1 回答
1855 浏览

python - 如何在 Chalice(AWS Lambda/API 网关)应用程序中访问原始查询字符串(或完整 URL)?

我正在使用 Chalice 在 AWS Lambda 和 API Gateway 上构建一个相当简单的 API。

我需要一种方法来访问原始查询字符串(即foo=bar&abc=123)。访问app.current_request.query_params字典时,它已被处理,因此任何空参数 ( foo=&bar=) 已被删除。

不幸的是,我正在使用基于原始查询字符串在查询字符串中发送签名哈希值的第三方 API。如果没有原始的、未更改的查询字符串,我无法验证它。除了 有什么办法可以访问current_request.query_params吗?

0 投票
3 回答
993 浏览

python - 从 chalicelib/utils.py 返回圣杯响应对象

使用 AWS Chalice,假设app.py如下所示:

并在utils.py

如果写成如图所示,return 语句 fromsome_class.some_def不会返回给客户端。但如果我some_def从里面跑,app.py它就会被退回。为什么?

如何从外部将对象返回给客户端app.py

0 投票
1 回答
575 浏览

mysql - 如何将 python mysql.connector 包含到 AWS Chalice 部署中?

我尝试部署一个 AWS lambda 应用程序,我使用 Chalice Python 框架实现。我的 app.py 连接到 MySQL 服务器,因此必须

但是在每次调用我的一个 lambda 函数时,我都会在日志中得到一个错误

我尝试将 mysql.connector 添加到 chalice 项目中的 requirements.txt 文件中:

如果我这样做,AWS lambda 环境中会出现另外 2 个包含多个文件的文件夹:

/mysql_connector-2.1.6.data

/mysql_connector-2.1.6.dist-info

但错误仍然是一样的。如何使用 Chalice 部署 python mysql.connector?

0 投票
0 回答
2180 浏览

python - importError:没有名为 jose 的模块

虽然,我已经安装了 python-jose,但它仍然抱怨运行“chalice local”时找不到 jose 模块。任何人都可以帮忙。

但是,当我运行 python3.6 控制台然后导入 jose 时,它​​不会抱怨。任何想法?

0 投票
1 回答
1331 浏览

python - virtualenv python中的sys.path

我在虚拟环境中运行“本地圣杯”。我没有看到虚拟环境中安装的库。从 chalicelib/common.py 文件中,我看到要设置的路径(sys.path):

但是当我从虚拟环境控制台运行 python3.6 时,我看到了这个:

此处路径设置正确。为什么在前一种情况下不会发生。因此,当我运行我的应用程序时,我遇到了很多模块导入错误,例如:ModuleNotFoundError: No module named 'jwt'。有人可以帮忙吗?

谢谢, 苏迪普

0 投票
0 回答
415 浏览

python - AWS Chalice - 将 app.py 拆分为多个文件

我将 chalice 用于具有很多端点的应用程序。我不想将它分成几个 lambda,因为它们共享相同的代码(在 chalicelib 中),但我想以某种方式分离我的app.py(例如,我希望它像 app_user.py、app_sessions.py 等)我对 Python 核心不是很好,但我认为应该有可能以某种方式使用__init__.py圣杯在部署时将我的文件粘合在一起。

#includetl; dr 是否有可能在 Python 中使用来自 C 的东西?

谢谢。

0 投票
1 回答
853 浏览

python - 为什么 AWS 的 Chalice for Python 不尊重我的 virtualenv?

我正在尝试按照教程部署一个圣杯应用程序。我正在使用带有 python3.6 的 virtualenv。我的应用程序依赖于 requirements.txt 中的 github 存储库,并且该存储库的 requirements.txt 依赖于几个库。

我可以很好地运行应用程序,python -i app.py并且可以在 REPL 中正确执行我的端点。

但是,当我运行时,chalice deploy我收到一个错误,抱怨我需要的 github 存储库所需的模块。

但是请注意,正在使用的这个 chalice 库是 2.7。我在一个设置为 python3.6 的 virtualenv 中。

我意识到我之前已经在全球范围内安装了 chalice,这可能是一个错误。所以我 pip 全局卸载了 chalice,但它仍然安装在我的 virtualenv 中。

现在重新运行圣杯,我得到

我尝试将 chalice 的安装重新运行到本地 virtualenv,但它没有改变任何东西。

我在这里做错了什么?

0 投票
2 回答
1077 浏览

python - 让客户端通过 Chalice 将图像上传到 S3 存储桶的最佳做法是什么?

我正在使用Chalice 框架来创建 API 服务。我的用户需要上传图像,然后我需要将图像保存到 s3 存储桶。

用户应该如何将图像上传到我的端点,我的端点收到图像后应该做什么?

到目前为止,这是我的思考过程:

这是行不通的。我已经回顾了在烧瓶中执行此操作的方法,但语法略有不同,因为烧瓶具有该request.files属性。

0 投票
0 回答
81 浏览

python - 无法使用纸浆 python 库部署在圣杯上

我正在运行亚马逊 ec2 实例。已经创建了一个圣杯项目。到目前为止,已经将纸浆安装到项目文件夹中pip -install pulp -t /home/test/project/vendor/

进行圣杯部署时,出现错误:

从供应商文件夹中删除纸浆时,圣杯部署工作正常。请帮忙。