Using awssum 0.6.1
Triple checked access key id, access key and account id. Gave permissions to everyone on the bucket. Checked local pc time against s3 server time.
The code I am using is taken straight from the examples folder for awssum, the put-object.js example. What I am looking for is a working sample of the PutObject method for awssum 0.6.1 or confirmation that someone has it working. Any other ideas on what my issue is, is appreciated.
var express = require('express')
, routes = require('./routes');
var app = module.exports = express.createServer();
var awssum = require('awssum');
var amazon = awssum.load('amazon/amazon');
var S3 = awssum.load('amazon/s3').S3;
var accessKeyId = '-----------------';
var secretAccessKey = '----------------------';
var awsAccountId = '-------------------';
var s3 = new S3({
accessKeyId : accessKeyId,
secretAccessKey : secretAccessKey,
awsAccountId : awsAccountId,
region : amazon.US_EAST_1
});
// Configuration
app.configure(function(){
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(express.bodyParser({ uploadDir: __dirname + '/public/files', keepExtensions: true }));
app.use(express.limit('5mb'));
app.use(express.methodOverride());
app.use(require('stylus').middleware({ src: __dirname + '/public' }));
app.use(app.router);
app.use(express.static(__dirname + '/public'));
});
app.configure('development', function(){
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.configure('production', function(){
app.use(express.errorHandler());
});
// Routes
app.get('/upload', function(req, res) {
});
app.post('/upload', function (req, res) {
res.send("true");
var body = "Hello, World!\n";
var options = {
BucketName : 'FTPSE',
ObjectName : 'success',
ContentLength: Buffer.byteLength(body),
Body: body
};
s3.PutObject(options, function(err, data) {
console.log(err)
console.log(data)
});
});
app.get('/', routes.index);
app.listen(3000, function(){
console.log("Express server listening on port %d in %s mode", app.address().port, app.settings.env);
});
Andy author of AwsSum here.
There are some known issues with the S3 signature in v0.6.x of AwsSum, but they are fixed in later versions. The current version (as at 2012-08-16) is v0.8.0 and it will be fine for what you are doing.
If possible, please upgrade and try again. :) Many thanks.