问题标签 [webob]

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

python - 获取完整的原始 http 请求(包含标头和正文)

在一个 appengine 项目中,我试图在 webapp2.RequestHandler 中获取整个 http 请求:

浏览了文档后,我开始认为这是不可能的

我正在寻找的结果是这样的(无论如何我都会称之为http请求):

编辑:更新了示例

使用 webapp2 时是否有另一种更有效的方式来访问这些数据?

0 投票
1 回答
382 浏览

python - 我想从带有 webob 的文件夹中提供文件

我想用webob.static.DirectoryApp. 我只是不知道该怎么做:

http://docs.webob.org/en/latest/file-example.html的示例中,我的路由器看起来像:

要创建要服务的应用程序:

这可以很好地为我添加的控制器提供路由。我还添加了一个self.static_app.

我只是不知道如何使用它来提供来自static-folder 的静态文件!有人可以启发我吗?

0 投票
1 回答
1162 浏览

python - 如何修补类的 __init__ 方法中的实例?

我正在写一个单元测试。如何在 MyValidator 类的init方法中修补 self.conf?在我的单元测试中,我想创建一个假的 self.conf 并获得响应以断言 self.conf 中的每个元素。

对于单元测试,我正在考虑做......(我知道这是错误的......但你明白了)

应该如何修补 self.conf 以获得预期的响应?

0 投票
2 回答
1933 浏览

python - 如何在 RHEL v.7 上安装 keystone?

我正在尝试在 RHEL v. 7 的 64 位版本上安装 keystone(一个 OpenStack 组件)。我以前没有这样做过。

我运行这个:

我在最后看到这个:

但是 webob 安装了正确的版本:

额外的软件包已经安装:

看起来相关的额外软件包已安装。

如何安装 python-keystoneclient?似乎存在依赖性解决问题。但是他们看不到真实的东西,因为安装了额外的软件包。

打开了一个类似的 RedHat“错误”(不是真正的错误):tinyurl [DOT] com/osp9o93(您必须构建上面的 HTTP 链接,因为我无法发布链接;但有人可能会在不证明研究的情况下帮助我)

它引导用户去这里:tinyurl [DOT] com/65s3xm6(你必须构建上面的 HTTP 链接,因为我无法发布链接;但有人可以在不证明研究的情况下帮助我)

我安装的 webob 版本(如 pip 命令结果所示)足够新。RHEL v.7 不是安装 keystone 的可接受版本吗?

我只想在 RedHat Linux 上安装 keystone。我不知道为什么这是有问题的。

python-webob 与 webob 有什么不同?是否有 32 位版本的 web 1.4.1?

0 投票
1 回答
66 浏览

python - 在 WTForm 中处理数据时“丢失数据”

我从客户端发送 HTTP 请求。然后在服务器上我尝试验证一个 WTForm 表单。

以下命令在 RequestHandler 中执行:

从最后一个命令中,我希望看到{"username":"my_email@me.com", "password":"pass"}以后可以验证。但是,不知何故,实际数据“丢失”了。有任何想法吗?

0 投票
1 回答
791 浏览

python - 如何将 BytesIO 对象附加到 Webob.Response 对象

我将 Webob.Response 对象从我的服务器返回到 http 请求。服务器将一个 BytesIO 对象放在一起。如何正确地将 BytesIO 对象附加到 Webob.Response 对象?

我试过:

不走运,当我response.content在客户端打印时,它只是空的

我也试过:

但这会引发错误:

文件“/home/abdul/abdul/scripting-120218/local/lib/python2.7/site-packages/webob/response.py”,第 147 行,在init self._headerlist.append(('Content-Length', str(len(body)))) TypeError: '_io.BytesIO' 类型的对象没有 len()

0 投票
1 回答
102 浏览

html - 使用 webapp2,如何在 POST 请求期间获取表单“名称”属性的值?

代码:

我想告知我的应用程序用户正在提交什么类型的表单。我以为我可以使用表单的“名称”属性,但无法弄清楚如何使用webapp2.

0 投票
1 回答
102 浏览

python - 在处理请求之前设置请求的属性

我的 App Engine 应用程序有一个自定义用户模型。此模型在应用程序代码中经常被访问。我想通过在处理请求之前将模型实例注入每个经过身份验证的请求来简化代码(类似于process_requestDjango 中间件类的方法)。

我正在使用以 webapp2 作为框架的 App Engine Python2.7 标准运行时。

我尝试创建一个可调用的 WSGI 中间件,它修改了 WSGI 环境字典并定义了一个添加中间件的webapp_add_wsgi_middleware函数appengine_config.py,但中间件直到应用处理完请求后才运行。

如何在应用程序处理请求之前对其进行修改?

0 投票
2 回答
1070 浏览

python - Webapp2 Python set_cookie 不支持同站点cookie?

webapp2 文档中没有提到SameSite为 cookie 设置属性,它似乎是基于 WebOB 的响应处理程序构建的,我检查了 webOB 文档页面,它清楚地显示了“SameSite”标志作为接受的 cookie 参数

尽管如此,我还是尝试在 set cookie 中设置它:

但我收到以下错误:

TypeError: set_cookie() got an unexpected keyword argument 'samesite'

我知道可以使用self.response.headers.add_header('Set-Cookie', ...,但我希望我可以self.response.set_cookie按照 webapp2 文档使用