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