【问题标题】:Grant Google App Maker Full Google Drive API Scope / Server Rejected Error授予 Google App Maker 完整的 Google Drive API 范围/服务器被拒绝错误
【发布时间】:2019-12-21 00:11:58
【问题描述】:

我有一个使用 Google 云端硬盘文件选择器小部件的应用程序制造商应用程序。但是上传文件不起作用,我收到服务器拒绝错误。

API 上传响应

{
"errorMessage": {
    "reason": "REQUEST_REJECTED",
    "additionalInfo": {
        "uploader_service.GoogleRupioAdditionalInfo": {
            "completionInfo": {
                "status": "REJECTED"
            },
            "requestRejectedInfo": {
                "reasonDescription": "agent_rejected"
            }
        }
    },
    "upload_id": "UrqXRaPdnG_DZ0L-iDX5BJsG4XEg"
}

我认为问题在于应用的 oauth 范围。它似乎只有读取权限,不足以上传新文件。

我想授予它完全访问权限https://www.googleapis.com/auth/drive,但我不清楚如何执行此操作。

【问题讨论】:

    标签: google-api google-drive-api google-oauth google-app-maker


    【解决方案1】:

    这种行为是一个错误,据我所知,它是最近引入的。老实说,在驱动器选择器中启用简单上传功能时应该授予完整的驱动器范围,但由于某些原因它没有这样做。作为一种解决方法,您可以将以下内容放入任何服务器脚本中:

    /***
    Dummy function for drive full permissions
    ****/
    function dummyForDrivePermission(){
      var file = DriveApp.addFile();
    }
    

    上述代码将强制 appmaker 识别它需要上传文件,尽管您永远不会调用该函数,但它会服务于授予您需要的范围的目的。

    【讨论】:

    • 这解决了问题!将上面的代码添加到服务器脚本中,然后运行新的预览 - 应用程序将请求新的访问范围并且上传将起作用。 ?
    猜你喜欢
    • 1970-01-01
    • 2014-10-29
    • 2016-05-20
    • 2017-05-14
    • 2017-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-04
    相关资源
    最近更新 更多