【问题标题】:Google People API: member_resource_names from not empty contact group returns nilGoogle People API:来自非空联系人组的 member_resource_names 返回 nil
【发布时间】:2021-01-11 23:16:38
【问题描述】:

根据documentation in the codemember_resource_names 应该返回“属于联系人组成员的联系人资源名称列表”,但它返回 nil。

我正在做这样的事情(红宝石):

service = Google::Apis::PeopleV1::PeopleServiceService.new
# authentication code
contact_group = service.get_contact_group("contactGroups/xxxxxxxxxxxxxxxx")
=> #<Google::Apis::PeopleV1::ContactGroup:0x00007fd69fca6f48
  @etag="xxxxxxxxxxxx",
  @formatted_name="Contact list",
  @group_type="USER_CONTACT_GROUP",
  @member_count=10,
  @metadata=#<...>,
  @name="Contact list",
  @resource_name="contactGroups/xxxxxxxxxxxxxxxx">
contact_group.member_resource_names
=> nil

即使 member_count 是 10,member_resource_names 始终返回 nil。

我使用的是 ruby​​ 2.4 和 google gem 0.52.0。

其他人看到过这个问题吗?

【问题讨论】:

    标签: ruby google-people-api


    【解决方案1】:

    问题:

    调用contactGroups.get时,应指定maxMembers

    说明:

    如果您访问有关 contactGroups 的官方 API 文档,您会看到 memberResourceNames 仅在某些情况下才会填充:

    memberResourceNames[]:仅输出。作为联系人组成员的联系人资源名称列表。该字段仅针对 GET 请求填充,并且将仅返回与 get 请求中的 maxMembers 一样多的成员

    maxMembers,不过,如果没有指定,defaults to 0

    ma​​xMembers:可选。指定要返回的最大成员数。 如果未设置则默认为 0,这将返回零个成员

    解决方案:

    因此,基于库示例:

    def get_contact_group(resource_name, max_members: nil, fields: nil, quota_user: nil, options: nil, &block)
    

    你应该改变这一行:

    contact_group = service.get_contact_group("contactGroups/xxxxxxxxxxxxxxxx")
    

    类似这样的东西:

    contact_group = service.get_contact_group("contactGroups/xxxxxxxxxxxxxxxx", 100)
    

    其中100 是返回的最大成员数(根据您的喜好更改)。

    参考:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-07
      • 2020-12-07
      相关资源
      最近更新 更多