问题标签 [spyne]

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

xml - 在 django spyne 中具有多个数据处理的 xml

我有一个运行 django 和 spyne 的服务器,我想将 spyne 配置为接受 xml,如下所示:

可能吗?我该怎么做?

并且更改客户端是不可能的,所以我必须使用这种格式。

编辑:

到目前为止我所做的:

模型:

服务:

应用:

当只有一个时这有效

虽然命名空间存在问题,但 lxml 验证器会导致错误。

问题是如何更改代码以接受多个标签。

PS:如果有人告诉我如何解决我的命名空间问题,我将不胜感激。:)

编辑2:

这是我在使用 lxml 验证器时遇到的错误:

0 投票
1 回答
666 浏览

python - 如何将 HTTP 端点添加到 spyne WsgiApplication

spyne.Application如果我有一个 spyne 应用程序从一个对象继承并通过它提供服务,spyne.WsgiApplication我将如何将自定义 HTTP 端点添加到 WSGI 服务器,例如//info

基本结构反映了spyne.io上的结构

0 投票
1 回答
758 浏览

python - Spyne:为什么我收到 json 请求的空响应?

我有一个工作应用程序,它接受 SOAP 请求、处理请求、将 SOAP 请求转发到 API、处理响应,然后将响应转发给客户端。

我正在尝试更改此应用程序,使其在我的应用程序和客户端之间是 JSON,但在 API 和我的应用程序之间仍然使用 SOAP

现在,它可以成功地接受来自客户端的 JSON 请求并使用 API 发送/接收 SOAP。但是,对客户端的所有响应都是空的。

我收到非空响应的唯一情况是我的 JSON 请求存在验证错误。

以下是一些可能相关的代码

MyDjangoApplication 的定义

MyServer的定义

MyTestMethodRequest、MyTestMethodResponse 的定义:

check_method的定义:

generate_out_string 的定义:

注意:这些定义中的大部分已经被简化(我已经删除了我认为不相关的行)

0 投票
0 回答
270 浏览

python - Spyne:如何处理迭代

我有一个 django 应用程序,它接受 JSON 请求,处理请求,将它们作为 SOAP 转发给 API,处理响应,然后将响应作为 JSON 转发给客户端。

响应中没有 Iterable 的方法工作正常。但是对于具有 Iterable 的方法,它要么返回杂乱无章的响应,要么返回内部错误。

例如:

返回的对象:

JSON 响应

0 投票
1 回答
380 浏览

django - 如何在 Spyne 中使用 Soap11 文档/文字(正文)(未考虑 SOAPAction)

我正在将 spyne 2.11 与 Django 1.4 一起使用,并且我正在尝试模拟 Apache Axis 1.4 Web 服务。

我的 WS 客户端是 suds,我正在接收带有裸露主体的 WS 请求,即,参数未包含在消息内和“SOAPAction”http 标头中。

尽管我明确指定了 _operation_name un srpc 装饰器和 _body_style='bare',但 Spyne 无法识别该操作。它仍然尝试从元素的第一个子元素中获取操作名称。

我如何指导脊椎:

  1. 考虑 SOAPHeader 作为 operation_name
  2. 将 SOAP-Env:Body 的第一个孩子视为函数/操作参数?
0 投票
1 回答
146 浏览

spyne - spyne server_sqlalchemy 的多对多版本

我修改了 server_sqlalchemy 示例以启用多表,如下所示并permissions = Array(Permission).store_as(table(multi=True))添加了方法get_permission,类似于,put_permission和.get_all_permissionget_userput_userget_all_user

在客户端,我使用 suds 客户端如下:

put_user(v)失败是由于

sqlalchemy.exc.InvalidRequestError:由于之前刷新期间的异常,此 Session 的事务已回滚。要使用此 Session 开始新事务,首先发出 Session.rollback()。原始异常是:(sqlite3.IntegrityError) UNIQUE 约束失败:permission.id [SQL: 'INSERT INTO permission (id, operation, application) VALUES (?, ?, ?)'] [parameters: ((3, 'modify' , 'usermgr'), (4, 'read', 'accountmgr'))]

显然,代码试图将 p,q gain 插入权限表并失败。多表不应该只插入 user_permissions 表吗?如果没有,如何实现客户端中显示的所需行为?

谢谢

0 投票
1 回答
165 浏览

python - 从 SRCP 方法 Spyne 获取 Django 请求?

我有一个 SRCP 和准确的方法,只在执行任务之前对用户进行身份验证。我能够在 Django 中使用基本身份验证登录,但无法在 SRCP 方法中恢复数据请求,例如用户。

0 投票
1 回答
1300 浏览

python - 如何使用 Spyne 添加具有特定命名空间和前缀的自定义 SOAP 标头?

我正在尝试使用 Django + Spyne 2.11/2.12.x 模拟现有的 Axis 1.4 服务,并且需要具有特定命名空间前缀(wsse / wsu)的 WS-security Timestamp 令牌。我将它与已经正常工作的 suds 数字签名插件(sudssigner)一起使用。

向 spyne 添加动态 SOAP 标头的推荐方法是什么?

如何强制使用具体的命名空间前缀?

更新: WS 响应应尽可能接近以下示例:

提前谢谢。

0 投票
1 回答
302 浏览

python - 由于空格,客户端无法验证来自 spyne SOAP 服务器的答案

我有 Django 模型

和其他不重要的领域。

我有这样描述的 spyne 模型

和产生响应的函数

xml描述是

发出请求的服务器然后验证响应,并在发现注释在开始或结束 os 字符串上有空格时引发异常。据我了解, normalizedString 类型不允许使用未剥离的刺。从那种类型的字符串中动态删除空格的任何方法也是如此。我查看了源代码并找到了类定义

因此white_space = "replace"在客户端进行检查。

0 投票
2 回答
95 浏览

postgresql - 现有数据库结构的 Spyne 模型

我在 spyne 中定义模型以在 SOAP11 中生成多个级别时遇到问题。起初我使用了示例,但我的任务是为已经存在的表生成服务,所以我卡住了,试图了解在 Spyne 属性或 Sqlalchemy 中寻找。

准确地说,我将从网站上举例说明我想要达到的目标:

最后一个字段是用户表的外键,但它的名称与 user_id 不同

--- SQL 生成尝试添加“WHEN user.id = permission.user_id”,但我需要过滤另一个字段(perm_user_id)

帮助我定义类以获得正确的内部标签。实际上它会多 3 个类。

提前感谢,尤里