putFile出现{ error: 'bad auth'}错误

请原谅我用如此愚蠢的贴代码的形式提问,因为的逻辑太过简单(使用了sdk的代码),无法用更为简洁优雅的描述方式。我使用npm安装了qiniu的node.js版本做文件上传测试:代码如下:

uploadtest.js:

var qiniu = require('qiniu');
var path = require('path');

qiniu.conf.ACCESSKEY = "my-access-key";
qiniu.conf.SECRET_KEY = "my-secret-key";
var bucket = '账号下一个公有的空间名名称';
var imageFile = path.join(__dirname, "abc.png");
//该文件可以获取

function uptoken(bucketname) {
  var putPolicy = new qiniu.rs.PutPolicy(bucketname);
  return putPolicy.token();
}
// 返回值为<PLEASE APPLY YOUR ACCESS KEY>:TKmc4yhHf2AJQvOYG...

function uploadFile(localFile, key, uptoken) {
  var extra = new qiniu.io.PutExtra();

  qiniu.io.putFile(uptoken, key, localFile, extra, function (err, ret) {
    if (!err) {
      // 上传成功, 处理返回值
      console.log(ret);
      console.log(ret.key, ret.hash);
      // ret.key & ret.hash
    } else {
      // 上传失败, 处理返回代码
      console.log(err);
    }
  });
}

var token = uptoken(bucket);
var key = Math.random() + 'abc.png';
uploadFile(imageFile, key, token);

我使用node uploadtest.js调用这个脚本,返回值却是:

{ error: 'bad auth' }
undefined undefined

P.S. 最近七牛的版本auth这部分实现逻辑有变化,是不是和这个有关系?

阅读 11.5k
1 个回答

accrsskey 拼写错误

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进