繁体   English   中英

Google App脚本和FusionTable

[英]Google App Scripts and FusionTable

我正在使用我的第一个Google App脚本(Webapp脚本)并尝试访问融合表,但是每次尝试访问融合表时,我都获得了不足的特权。 我已以该应用程序的所有者身份登录,所以我不确定为什么会这样。

function getReports(){
    var authToken = ScriptApp.getOAuthToken();
    Logger.log(authToken);
    var query = encodeURIComponent("Select * from " + tableId);
    queryFusionTables(authToken, query);
}


function queryFusionTables(authToken, query) {
    var URL = "https://www.googleapis.com/fusiontables/v1/query?sql="+query+"&key={myKey}";
    Logger.log(query);
    //Logger.log(authToken);
    var response = UrlFetchApp.fetch(URL, {
        method: "post",
        headers: {
            "Authorization": "Bearer " + authToken,
            "X-JavaScript-User-Agent":  "Google APIs Explorer",
        },
    });
    Logger.log(response.getContentText());
    return response.getContentText();
}

是否有人对为什么会这样有任何想法?

ScriptApp.getOAuthToken()返回的OAuth令牌仅被授权用于您脚本所要求的范围,该范围由您使用的Apps脚本服务确定。 例如,如果您要使用DriveApp ,则会请求Google Drive API范围。

Apps脚本代码不知道您正在尝试使用Fusion Tables API,因此它没有要求该范围。 但是,您真幸运! Apps Script使用Fusion Tables高级服务与Fusion Tables进行了内置集成。 只需启用该服务,Apps脚本将为您处理授权,并为您提供自动完成功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM