google people.api, people.getBatchGet, как создать список ресурсов имен? - PullRequest
1 голос
/ 29 января 2020

с одним resourceName, этот код работает нормально

    strTmp = resources(1)
    Set web_HTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
Repeat2:
    web_Url_AllResources = "https://people.googleapis.com/v1/people:batchGet"
    web_HTTP.Open "GET", web_Url_AllResources & "?" & _
        "access_token=" & Token & "&" & _
        "key=" & ApiKey & "&" & _
        "resourceNames=" & strTmp & "&" & _
        "personFields=" & "names,addresses,organizations,memberships"

значение в strTmp это people / c1546047072727163997

Если я wi sh, чтобы получить более одного ресурса с

strTmp = resources(1) & "," & resources(2)

я получаю код ошибки 400: неверный аргумент, ResourceName false

Я не знаю, как создать действительный список запросов.

1 Ответ

0 голосов
/ 30 января 2020

Вы должны предоставить параметр resourceNames для каждого консультанта, о котором вы хотите получить информацию. Поскольку указанное вами ResourceName (что-то вроде people/c12345,people/c123456) не существует, вы получите эту ошибку.

В этом случае URI для запроса должен быть:

https://people.googleapis.com/v1/people:batchGet?resourceNames=people/c12345&resourceNames=people/c123456&{other-fields}

Так что в в этом случае вам нужно будет сделать следующее:

    strTmp = resources(1)
    strTmpBis = resources(2)
    Set web_HTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
Repeat2:
    web_Url_AllResources = "https://people.googleapis.com/v1/people:batchGet"
    web_HTTP.Open "GET", web_Url_AllResources & "?" & _
        "access_token=" & Token & "&" & _
        "key=" & ApiKey & "&" & _
        "resourceNames=" & strTmp & "&" & _
        "resourceNames=" & strTmpBis & "&" & _
        "personFields=" & "names,addresses,organizations,memberships"

Я бы предложил вам проверить вызовы, в которых у вас есть сомнения, с помощью apis-explorer и / или с Детская площадка OAuth 2.0 .

Ссылка:

Надеюсь, это поможет вам.

...