【问题标题】:Import rows in Fusion Tables fails在 Fusion Tables 中导入行失败
【发布时间】:2013-05-18 22:36:35
【问题描述】:

我似乎无法将行正确导入 Google Fusion。我总是收到 503 后端错误。我的 Google Apps 脚本代码如下。

var getDataURL = 'https://www.googleapis.com/fusiontables/v1/tables/{tableID}/import?key='+{apiKey};

var ssDown = SpreadsheetApp.openById({Spreadsheet ID}).getDataRange().getValues();

var 选项 = { “方法”:“发布”, “contentType”:“应用程序/json”, “标题”:{ "授权" : "承载" + {token}, “接受”:“应用程序/json”, }, '编码' = '自动检测', '有效负载' = ssDown.toString(); } };

var output = UrlFetchApp.fetch(getDataURL,options).getContentText();

【问题讨论】:

  • 我一直看到这个后端错误,但在脚本上与 Fusion 表无关。看看 issue 2759 (code.google.com/p/google-apps-script-issues/issues/…)
  • 响应来自 Fusion Tables,而不是 GAS。我已经复制了下面的错误。 [13-05-19 11:18:20:362 BST] { "error": { "errors": [ { "domain": "global", "reason": "backendError", "message": "后端错误" } ], "code": 503, "message": "后端错误" } }

标签: google-apps-script google-fusion-tables


【解决方案1】:

问题是由于我的粗心编码造成的。正确的代码是:

var getDataURL = 'https://www.googleapis.com/upload/fusiontables/v1/tables/{tableID}/import';
var options = { "method" : "post",
              "contentType" : "application/octet-stream",
              "headers" : {
                "Authorization" : "Bearer " + {token},
                "Accept" : "application/json",
              },
            }
var ssDown = SpreadsheetApp.openById({sheetID}).getDataRange().getValues().toString();
options.payload = ssDown;
var output = UrlFetchApp.fetch(getDataURL,options).getContentText();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-19
    相关资源
    最近更新 更多