代码之家  ›  专栏  ›  技术社区  ›  Joon

google people getbatchget中的资源名称是否以逗号分隔?

  •  1
  • Joon  · 技术社区  · 6 年前

    https://developers.google.com/people/api/rest/v1/people/getBatchGet

    资源名称字符串

    提供相关信息的人员的资源名称。

    要获取有关已验证用户的信息,请指定people/me。到 获取有关Google帐户的信息,指定人员/帐户\u id.to 获取有关联系人的信息,指定 标识people.connections.list返回的联系人。你可以 在一个请求中包含最多50个资源名称。

    它规定 resourceNames 是字符串,但不说明是否用逗号分隔,而 personFields 以逗号分隔。

    在官方客户中,它的类型也是 string ,所以我猜是逗号分隔的?

    我使用node的方式是: https://github.com/google/google-api-nodejs-client/blob/master/src/apis/people/v1.ts#L2399

    它的类型是严格的 一串 .

    1 回复  |  直到 6 年前
        1
  •  2
  •   Tanaike    6 年前

    当你想用几个 resourceNames ,请使用以下查询参数。

    GET https://people.googleapis.com/v1/people:batchGet?requestMask.includeField=emailAddresses,names&resourceNames=people/me&resourceNames=people/123456789
    

    使用时,请按以下方式编码。

    GET https://people.googleapis.com/v1/people:batchGet?requestMask.includeField=emailAddresses%2Cnames&resourceNames=people%2Fme&resourceNames=people%2F123456789
    

    参考文献

    如果我误解了你的问题,我很抱歉。

    补充:

    当您想在googleapis使用它时,请使用它作为一维数组。

    const people = google.people({version: 'v1', auth});
    people.people.getBatchGet({
        resourceNames: ['people/me', 'people/123456789',,,],
        personFields: 'emailAddresses,names',
    }, (err, res) => {
        if (err) {
            console.log(err);
        } else {
            console.log(res.data);
        }
    });
    
    推荐文章