问题标签 [pyamf]
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.
python - PyAMF 能否通过文件系统支持服务部署?
我正在评估 PyAMF 以取代我们当前的 PHP (ugh) AMF 服务框架,但我无法找到一个关键信息,可以让我提供一个引人注目的用例来进行转换:
现在,只需将 .php 文件放入文件系统即可部署新的 PHP AMF 服务;下次访问它们时,新服务就会发挥作用。删除服务就像删除提供它的 .php 文件一样简单,更新它也相应简单。我需要 PyAMF 提供同样易于部署的功能。如果我们必须重写我们的安装程序来部署这些服务,那将是一个失败者。
所以,我需要知道的是,PyAMF 是否可以通过文件系统支持新服务发现,它是否可以通过相同的方式支持服务升级和删除,如果是,那么设置它的最佳方法是什么?
我对各种服务器选项持开放态度;我可以很容易地安装chermpy、django,任何安装和运行的东西,甚至——稍微猛烈一点——有mod_python或mod_wsgi可用。
django - 如何在 Django/PyAMF 和 Flex 之间映射字段名称?
例如,使用我的 UserProfile 模型:
因此,我最终得到了一个名为“public”的字段。这在 ActionScript 中不适用,因为它是一个关键字。更改很烦人,因为它已融入 django-profile 包中的多层功能。所以,我不得不在 Flex 端重命名它:
在交易的任何一方,我可以在哪里声明“远程字段公共转换为本地字段_public”?我在 PyAMF 方面对 ClassAliases 进行了一些处理,但它很快就变得一团糟,并且没有关于如何很好地做到这一点的文档。Flex 方面的文档似乎表明我可以覆盖一个“处理传入请求”处理程序,但我认为它发生在已经填充 com 对象中的字段之后,因此将它们放在地板上,因为适当的字段不存在,给我留下了一堆:
在 Flex 跟踪中...
python - 我在我的应用程序中使用 pyAMF,但我想设置智能服务,如下所述:
在一个普通的应用程序中,我设置了服务
但我想这样做:
每个请求都进入路由器功能。这需要 2 个参数:服务名称(在这种情况下可以是“users.login”或“test”)和输入(即 flex 发送到 python 的对象)然后如果来自 flex 的命令(服务)被命名为“users.login”。登录”。我想用参数运行路由器,然后这将打开 commands.users.login 包中的功能登录。我该怎么做?谢谢。
django - pyamf.amf3.ByteArray 如何保存到 ImageField?
我得到对象 'pyamf.amf3.ByteArray' 我怎样才能将它保存到 ImageField ?
django - Flex 4 + Django:测试和发布选项
我正在创建一个基于 django 的站点,该站点将为偶尔通过pyamf访问数据的 Flash 应用程序提供服务。我需要能够在 django 框架的上下文中轻松测试 flash,即使用所有登录 cookie 和所有可用的东西,以便当我进行 pyamf 调用时,它具有所有用户上下文。而且我需要能够以一种理智的方式测试和发布 swf 和包装器 html。然而:
- flex 中的 html 模板已经是模板,所以如果我将 django 的模板代码放在那里,它会在创建 flashapp.html 之前被刮掉。
- html 和 swf 会自动发布到同一个目录,但我希望它们转到不同的目录,因为 swf 不应该由 django 提供,并且 html 应该在 django 控制的区域中。
乍一看,这让我相信我需要:
- 一种将 html 和 swf 文件发布到不同位置的方法。(我不知道该怎么做。)
- 一种将 html 作为存根(没有 html/body 标记)发布的方法,以便我可以从 django 的另一个位置包含它们。(我想只是从 index.template.html 中删除我不想要的东西?)
- 然后我可以将 flex 指向 django 站点,该站点又包含生成的 flashapp.html,而 flashapp.html 又引用了 swf,它应该都可以工作。(我假设通过将该备用 html 提供给运行/调试设置。)
所以我的问题归结为:
- 以上是做到这一点的最好方法,还是这甚至是正确的方向?
- 如果是这样,我如何将 html 和 swf 发布到不同的目录?(对于调试和发布模式,如果有两种不同的方法。)
- 如果不是,什么是正确的?
如果在这个主题上对我有任何其他一般性的建议,请随时分享。:-)
python - 用于 GAE(Google App Engine)的 pyAMF,需要很少的帮助:
对此我想:
这可能吗?谢谢
django - Flash + pyAMF + Django 会话 cookie 安全性
首先,如果有一个真正的、官方的方式让 flash/flexNetConnection
篡夺周围网页的 session/cookie 状态,那么如果用户已经登录,他们不需要再次提供凭据来设置 AMF 连接,请立即阻止我并发布官方答案。
除此之外,我假设没有,因为我已经搜索过它似乎不存在。我已经编造了一种方法来做到这一点,但想要一些关于它是否安全的反馈。
- 由于 django 中间件,访问 flash 对象的包装页面将始终进入安全 https
- 当在 Django 中加载页面视图时,它会创建一个“会话别名”对象,该对象具有一个唯一键,该键指向当前正在运行的会话(其中有人表面上已登录)
- 该会话别名模型被保存,该密钥被放入一个 cookie 中,该 cookie 的密钥是另一个随机字符串,称之为 randomcookie
- 该 randomcookie 密钥名称作为上下文变量传递并作为 flashvar 写入 html 到 swf
- swf 也只能通过 https 加载
- Flash 应用程序使用
ExternalInterface
调用 java 来获取该 randomcookie 位置的值,并删除 cookie - 然后它创建一个
NetConnection
安全服务器 https 位置,将该 randomcookie 作为参数(数据,不在 url 中)传递给 login-using-cookie rpc - 在网关端,pyamf查找会话别名并获取它指向的会话,并根据该会话登录用户(并删除别名,因此不能重复使用)
- (并且网关请求还可以将会话 cookie 和 session.session_key 设置为已知的会话 ID,但我可以让它创建一个全新的会话密钥......我假设这样做应该会正确影响响应,以便它包含正确的会话密钥)
- 此时,flash 端返回的 cookie 值应该坚持,
NetConnection
以便进一步的调用被验证(如果连接使用用户名和密码以正常方式进行验证,这肯定有效,所以我认为这是一个安全的赌注,测试将很快证明或反驳这一点)
那么,这是不安全的,还是会正常工作?据我所知,由于 html 页面保证通过 ssl,密钥和 cookie 数据应该被加密并且不可窃取。然后,其中的信息应该可以安全地一次性用作临时密码,通过 ssl 再次发送,因为网关也是 https。之后,它通过 https 使用普通的 pyAMF 系统,并且没有做任何不寻常的事情。
python - 我收到此错误:“ImportError:无法导入名称 python”我该如何解决?
我如何解决它?如果您需要任何信息来知道如何解决此问题,我可以解释,只是问。
谢谢
代码:
代码:
apache-flex - 如何使用 PyAMF 或 PhpAMF 在 flex 中上传文件?客户端,需要很少的服务器端帮助
嗨!
- 我需要使用带有机器人腿的 flex 上传一组图像。
- 上传图像时,我需要一个进度条才能工作。
- 它可能会同时上传 1 张或更多图片。
- 我想知道将 byteArray 上传到服务器然后保存图像对于服务器来说是否太重。
- 在服务器端,我有一个由 pyamf 制作的方法,如下所示:
.
谢谢 ;)
django - 谷歌应用引擎 django 表单 pyamf
我的 flash-pyamf-gae 效果很好。现在我想按照谷歌教程创建一个经典的 Django 表单:http ://code.google.com/appengine/articles/djangoforms.html 我做了但是当我发布在我的表单中输入的数据时,我收到以下消息来自 pyamf :
格式错误的流 (amfVersion=110)
400 Bad Request 请求正文无法成功解码。
追溯:
回溯(最后一次调用):
文件“C:\Users\Giil\Documents\dev\gae\moviesbuilder\pyamf\remoting\gateway\google.py”,第 79 行,在 post logger=self.logger, timezone_offset=timezone_offset )
文件“C:\Users\Giil\Documents\dev\gae\moviesbuilder\pyamf\remoting_init _.py ”,第 640 行,解码 msg.amfVersion) DecodeError: Malformed stream (amfVersion=110) Malformed stream (amfVersion= 110)
现在这对我来说很有意义,因为我从表单发送的不是 amf。我该如何处理?
注意:我觉得问题来自我的 app.yaml 我没有特殊的处理程序来告诉应用程序以不同的方式处理此表单......格式错误的流(amfVersion = 110)