Google员工getBatchGet中的resourceNames逗号分隔吗?

时间:2018-07-30 06:54:10

标签: google-api google-api-client google-people

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

  

resourceNames字符串

     

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

     

要获取有关已认证用户的信息,请指定人员/我。至   获取有关Google帐户的信息,请指定人员/ account_id。至   获取有关联系人的信息,指定资源名称   标识由people.connections.list返回的联系人。您可以   一个请求中最多包含50个资源名称。

它指定resourceNames为字符串,但没有提及是否用逗号分隔,而personFields用逗号分隔。

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

我正在使用Node:https://github.com/google/google-api-nodejs-client/blob/master/src/apis/people/v1.ts#L2399

其类型严格为string

1 个答案:

答案 0 :(得分:2)

要使用多个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);
    }
});