Google People API gapi.client.people未定义

时间:2018-11-17 09:06:50

标签: google-api gapi google-people

像这样初始化google people api gapi.client之后:

gapi.client.init,其对象包含范围,api密钥和客户端ID:

  init_people_api = async () => {
    await gapi.client.init({
      apiKey: API_KEY,
      clientId: CLIENT_ID,
      scope: "https://www.googleapis.com/auth/contacts",
    })
    await gapi.client.people.people.connections.list({
      'resourceName': 'people/me',
      'pageSize': 10,
      'personFields': 'names,emailAddresses',
    }).then(function(response) {
      console.log(response)
    })
  }

当我呼叫gapi.client.people时,它是未定义

gapi.client给了我这个对象:

gapi.client returned object

有人可以帮我弄清楚如何调试吗?我正在按照本教程的指示去做。我的用户已通过身份验证,我已经等待api库加载,等待了gapi.client初始化,但是现在当我要求gapi.client.people时,什么都没有。如何加载此功能?

2 个答案:

答案 0 :(得分:0)

当我的API密钥无效时,我似乎也遇到了同样的问题。确保您正在创建和使用单独的API密钥,而不是意外使用客户端密钥。另外,请仔细检查您的API密钥在其设置中是否受到任何限制。

如果在那里没有发现任何问题,请尝试重新生成API密钥或制作一个新密钥。让我知道您是否仍然遇到这个问题! :)

答案 1 :(得分:0)

您需要将let vue_data = [{approved: false},{approved: undefined},{approved: true}], vue_data2 = [{approved: false},{approved: true},{approved: true}], r = vue_data.some(({approved}) => approved === undefined), r2 = vue_data2.some(({approved}) => approved === undefined); console.log(r ? "data=>something is undefined" : "data=>everything is defined"); console.log(r2 ? "data2=>something is undefined" : "data2=>everything is defined");参数设置为People API发现文档discoveryDocs,以便将People API加载到GAPI中。请查看documentation sample,以获取有关操作方法的示例。