问题标签 [protorpc]

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 投票
0 回答
60 浏览

python - python如何设置计算差异?

所以我有两个 protopc.messages.FieldList。我想计算两个列表中的字段(字段类)之间的对称差异。我尝试执行以下代码。

list1 和 list2 是我的 FieldLists,它们每个都有三个元素。其中两个是相同的,一个是不同的。我希望输出能给我不同的元素。我运行了以下代码。

但是,可变差异最终保留了所有六个字段。

当我尝试使用以下方法进行操作时,它按预期工作。

所以我的问题是,Python 如何计算两组之间的对称差异?它是利用相等(通过值)还是使用 in 运算符(通过引用)?还有什么我没有看到的东西在起作用吗?

编辑以添加示例(这受到 protopc 文档的启发):

https://cloud.google.com/appengine/docs/python/tools/protorpc/?csw=1#Adding_Message_Fields

我得到的列表来自这些消息容器中的重复字段。

0 投票
1 回答
271 浏览

python - Python protoRPC:递归消息类

我正在尝试制作一个消息类来表示一棵树,所以我很自然地选择了:

但这不起作用,因为 atline 3 Node尚未定义且未解决。

关于如何使用 protorpc 消息制作树(任意树,而不是固定深度的树)的任何想法?


编辑:

试过:

端点抱怨:MessageDefinitionError: Message types may only inherit from Message

0 投票
2 回答
36553 浏览

protocol-buffers - 没有参数的 Protobuf RPC 服务方法

我正在尝试使用 Google 的协议缓冲区来描述 RPC 服务

当我尝试编译这个定义时,我得到一个Expected type name指向该WhoAreYou()片段的错误。

如果我用 替换它可以正常工作WhoAreYou()WhoAreYou(Whoami)但在这种情况下,该方法不需要任何参数。有没有办法做到这一点,还是根本不支持?

0 投票
0 回答
64 浏览

python - TypeError:“消息”对象不可调用

我正在构建一个 Flask 应用程序并将其托管在 Google App Engine 中。我想将该库集成到我的应用程序中,这样我就可以在不使用 Cloud Endpoints的情况下protorpc构建自定义 REST API 。messages.Message为此,我创建了一个apis_messages.py包含以下代码的文件:

api_messages.py:

然后我在我的导入这个StoredMessage对象views.py并使用它,如下所示:

视图.py:

使用此代码,我不断收到以下错误:

为什么我的消息不可调用?

0 投票
1 回答
197 浏览

python - 协议 RPC 消息,空/不设置重复字段

我正在使用 Google Cloud Endpoints 和 protorpc 消息(python),我创建了端点来编辑用户信息,如何检查用户何时发送空值以及何时未发送值?客户端可以发送 {languages: ''} 删除语言(设置为 None)或发送 {} 不做任何事情。UserEditMessage.languages 被检查为重复,因此无论字段未设置还是设置为 [],消息始终返回 [],对于非重复字段 {languages: ''} 返回 '',对于 {} 则返回 None。

例子:

0 投票
1 回答
65 浏览

python - 在构造函数调用中初始化 Python 静态类属性

在某些 Google文档中,有以下代码(为清楚起见进行了缩写)。定义该类Note,然后在构造函数调用中使用参数对其进行实例化。我不知道可以以这种方式初始化属性。这是原生 Python 功能还是 Message 超类中正在发生的某种魔法?

0 投票
1 回答
817 浏览

python - Endpoints API - protopc 验证错误

protorpc当我使用端点时,我遇到了一些奇怪的错误。在这段代码中:

当我调用application.get()错误如下:(完整的跟踪here):

TypeError:只能从确切类型应用程序的实体中复制。收到应用程序的实例。

并且调用application.list()错误如下:(此处为完整跟踪):

<class '.Application'>ValidationError:找到字段项的预期类型<Application name: u'test'>(类型<class '.Application'>

这可能是什么原因造成的?我的其他具有几乎相同代码(只是属性不同)的模型工作正常。

0 投票
0 回答
215 浏览

javascript - 通过 JavaScript 在浏览器中调用 Google Protocol RPC API

我正在尝试使用 jQuery访问Google 协议 RPC API ,如下所示:

但我只收到以下错误消息:

如何OPTIONS在 ProtoRPC 中返回不再出现此错误的方法?

0 投票
0 回答
77 浏览

python - Can we customize Google Cloud Endpoints + protorpc error response?

I am building a small service using Google Cloud Endpoints

When I make an HTTP call to this rest service without sending necessary parameters, I get the following error message:

Is there a way to customize this error message? I want to know if I can have something like below in the error response.

0 投票
0 回答
89 浏览

python - 如何创建使用 Datastore 的 Python 端点?

我正在尝试使用为 Android 和最终的 ios 应用程序创建一个 Python 端点来将数据存储在数据存储中,但我无法理解它们是如何组合在一起的。

我知道我想要 3 个实体UserEventMessage。在我的应用程序中,我希望能够查询、插入和更新User. 事件将作为User实体的“更新”处理。然后我还希望能够查询和插入上述消息,User这就是我不GCM专门使用的原因。

我的User实体目前看起来像这样:

我的Event实体如下所示:

我的Message实体看起来像这样:

我想我对 an应该如何工作有一个很好的理解datastore和一般的理解。endpoint我之前用 Java 编写过一次,但由于 Java 的启动时间慢和普遍存在错误,我决定使用 Python AppEngine。话虽如此,我很难理解这一切如何与我的 android 应用程序结合在一起,因为我对 Python 不是很有信心。

在提供的示例滴答声应用程序中,他们使用了ProtoRPC消息传递库,我认为在和之间进行通信endpointdatastore但我根本不明白它是如何工作的,并且实际上不能让我的适应没有错误,因为User包含一个列表的User

我的问题是是否、为什么、在哪里以及如何使用 ProtoRPC 库。