【问题标题】:How to fix Google Calendar API error如何修复 Google Calendar API 错误
【发布时间】:2016-11-14 19:41:32
【问题描述】:

我关注https://developers.google.com/google-apps/calendar/quickstart/nodejs#step_3_set_up_the_sample

但它不起作用并在下面输出:

  var clientSecret = credentials.installed.client_secret;
                                          ^

TypeError: Cannot read property 'client_secret' of undefined
    at authorize (/Users/prangyy/myApp/quickstart.js:32:43)
    at processClientSecrets (/Users/prangyy/myApp/quickstart.js:21:3)
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:404:3)

【问题讨论】:

    标签: node.js google-api google-calendar-api


    【解决方案1】:

    将 quickstart.js 中的第 34-36 行更改为:

    var clientSecret = credentials.web.client_secret; 
    var clientId = credentials.web.client_id; 
    var redirectUrl = credentials.web.redirect_uris[0];
    

    (在他们使用 credentials.installed 而不是 credentials.web 时出现错误,这就是 client_secrets.json 文件中显示的内容。)

    【讨论】:

      【解决方案2】:

      尝试检查 Node.js Quickstart 中的 client_secret.json。

      它应该包含 clientID、auth_url、token_uri、auth_provider_x509_cert_url、client_secret、redirect_uris、javascript_origins。

      {"web":{"client_id":"YOUR_CLIENT_ID","project_id":"google.com:my-project-1231","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://accounts.google.com/o/oauth2/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"YOUR_CLIENT_SECRET","redirect_uris":["YOUR_REDIRECT"],"javascript_origins":["YOUR_JAVA_ORIGIN"]}}
      

      如果还没有,请按照此获取您的client_secret.json 文件

      1. 使用此向导在 Google Developers Console 中创建或选择一个项目并自动打开 API。点击继续,然后点击凭据。
      2. 在页面顶部,选择 OAuth 同意屏幕选项卡。选择一个电子邮件地址,输入产品名称(如果尚未设置),然后单击“保存”按钮。
      3. 选择凭据选项卡,单击创建凭据按钮并选择 OAuth 客户端 ID。
      4. 选择应用类型Other,输入名称“Google Calendar API Quickstart”,点击创建按钮。
      5. 单击“确定”关闭生成的对话框。
      6. 点击客户端 ID 右侧的 file_download(下载 JSON)按钮。
      7. 将此文件移动到您的工作目录并将其重命名为 client_secret.json。

      我希望这会有所帮助。祝你好运:)

      【讨论】:

      • 谢谢,因为我的 client_secret.json 无效而出错。
      【解决方案3】:

      在客户端ID创建页面(粘贴文本的第 4 步)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-03-23
        • 2017-04-10
        • 2023-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-04
        • 2016-03-17
        相关资源
        最近更新 更多