0

我想从谷歌云存储导入csv文件到谷歌云sql和为此我使用以下查询。当我在应用程序脚本中执行查询时出现以下错误 * getservice()未定义 arguments ----参数(219473067) service ---- undefined token ---- undefined result --- --undefined 我-----未定义 ˚F----未定义 路径-----未定义 有效载荷-----未定义自动从谷歌云存储导入csv到谷歌云自动

,我使用的Java脚本是

function uploadtoCloudSQL() { 

var service = getService(); 

    if (!service.hasAccess()) { 
    Logger.log(service.getAuthorizationUrl()); 
    return; 
    } 

    var token = service.getAccessToken(); 

    // Getting list of files to be processed 

var result = JSON.parse(
    UrlFetchApp.fetch('https://www.googleapis.com/storage/v1/b/test/o', { 
     method: "GET", 
     headers: { 
     Authorization: 'Bearer ' + token 
     } 
    }).getContentText()); 

for (var i = 0; i < result.items.length; i++) { 
    if (result.items[i].name.indexOf(".") !== -1) { 
     files.push(result.items[i].name); 
    } 
    } 

    for (var f = 0; f < files.length; f++) { 

    var path = files[f].split("/"); 

    var payload = 
     '{"importContext" : { "csvImportOptions": {"table":"test_table"}, "fileType": "CSV", "database": "nmp", "uri": "gs://revealer_test/data/Sample_data.csv"}}' 
     .replace("data", path[0]) 
     .replace("Sample_data.csv", path[1]); 

    UrlFetchApp.fetch('https://www.googleapis.com/sql/v1beta4/projects/PROJECT/instances/INSTANCE/import', { 
     method: "POST", 
     contentType: "application/json", 
     headers: { 
     Authorization: 'Bearer ' + token 
     }, 
     payload: payload, 
     muteHttpExceptions: true 
    }); 

    UrlFetchApp.fetch('https://www.googleapis.com/storage/v1/b/test/o/' + encodeURIComponent(files[f]), { 
     method: "DELETE", 
     headers: { 
     Authorization: 'Bearer ' + token 
     } 
    }); 

    // Wait for the previous import job to end 
    Utilities.sleep(5000); 

    } 

} 

请帮忙我纠正错误.. 谢谢

+0

正如此[链接](http://initcode.info/why_do_i_get_ldquo_service_is_not_definedrdquo_error_message_in_angular_page)所述,您会收到错误'getservice()未定义,因为您从未将您的服务注入到控制器中,或者您没有添加'index.html'中的服务脚本。 – abielita

回答