Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Error-while running node application in APIGEE edg. "Script node executed prematurely

rm11
New Member

When I try to execute the below node js I am getting error when I try to fetch file from S3 bucket to apigee.

Code as follows:

var aws = require('aws-sdk');
var csv = require('csvtojson');
var http = require('http');
var apigee = require('apigee-access');
var request = require('request');
var express = require('express');
var bodyParser = require('body-parser');
var tempJson = require('./data.json');
var dataManager = require('./dataManager');
var app = express();
  app.post('/tempLoad', function(req,res){
    var dbset = apigee.getVariable(req, "request.queryparam.dbset");
var accessKeyId=apigee.getVariable(req, "s3_accessKeyId");
var secretAccessKey=apigee.getVariable(req, "s3_secretAccessKey");
var s3Bucket=apigee.getVariable(req, "s3_bucket");
var access_token=apigee.getVariable(req, "access_token");
var app_name=apigee.getVariable(req, "private.baasAppName");
var fileName=apigee.getVariable(req, "Filename_DailySales");
    var Temp_DailySales=apigee.getVariable(req,"Temp_DailySales");
    var BaaSURL=(req, "private.BaaSURL");
aws.config.update({
"accessKeyId": accessKeyId,
"secretAccessKey": secretAccessKey
});
var s3 = new aws.S3({ "apiVersion": '2006-03-01' });
var bucket = s3Bucket;
    var key = fileName+".csv";
    var params = {
        Bucket: bucket,
        Key: key,
    };          
    s3.getObject(params, function(err, data){
        if (err) {
            console.log(err);
            res.status(500);
           res.send(err);
        } 
else {
var jsonOutput;
            var output = data.Body.toString("utf-8");
            var Converter = csv.Converter;
            var converter = new Converter({});
            converter.fromString(output,function(err,result){
                jsonOutput = result;
                var uri = "https://"+BaaSURL+"/"+app_name+"/"+Temp_DailySales+"_"+dbset+"?access_token="+access_token;
                dataManager.makeRequest(jsonOutput,access_token, uri, function(error,body){
                    if(error){
                        console.log("error = "+error);
                    }
else{
                        console.log("body = "+body);
                    }
                    res.send("done");
                });
});
        } 
});
});
app.listen(process.env.PORT || 9000);

,When I try to execute I am getting error like this. what should I do for this

{
    "fault": {
        "faultstring": "Script node executed prematurely: syntax error\nsyntax error\n    at module.js:439\n    at module.js:474\n    at module.js:356\n    at module.js:312\n    at module.js:364\n    at require (module.js:380)\n    at /organization/environment/api/node_modules/request/node_modules/hawk/node_modules/boom/lib/index.js:5\n    at module.js:456\n    at module.js:474\n    at module.js:356\n    at module.js:312\n    at module.js:364\n    at require (module.js:380)\n    at /organization/environment/api/node_modules/request/node_modules/hawk/lib/index.js:5\n    at module.js:456\n    at module.js:474\n    at module.js:356\n    at module.js:312\n    at module.js:364\n    at require (module.js:380)\n    at /organization/environment/api/node_modules/request/request.js:9\n    at module.js:456\n    at module.js:474\n    at module.js:356\n    at module.js:312\n    at module.js:364\n    at require (module.js:380)\n    at /organization/environment/api/node_modules/request/index.js:143\n    at module.js:456\n    at module.js:474\n    at module.js:356\n    at module.js:312\n    at module.js:364\n    at require (module.js:380)\n    at /organization/environment/api/index.js:5\n    at module.js:456\n    at module.js:474\n    at module.js:356\n    at module.js:312\n    at module.js:497\n    at startup (trireme.js:142)\n    at trireme.js:923\n",
        "detail": {
            "errorcode": "scripts.node.runtime.ScriptExitedError"
        }
    }
}
0 5 296
5 REPLIES 5