我正在使用nodeJs,并试图从SageMaker获取预签名的Url。这是我的代码:
const sagemaker = new AWS.SageMaker();
module.exports.callSagemaker = async (req, res) => {
let params = {
DomainId: '...',
UserProfileName: '...',
SessionExpirationDurationInSeconds: 120
};
await sagemaker.createPresignedDomainUrl(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
}
但我得到了这个错误:
TypeError:无法设置未定义的属性"Timestamp"在features.constructor.addAuthorization(/home/loredana/Documents/projects/edison_zeus/backend-zeus/node_modules/aws sdk/lib/signers/v2.js:14:24(
我的sdk版本是:
"aws-sdk":"2.800.0";
有人面临同样的问题吗?
我解决了这个问题,只为这个调用更新,在我的AWS配置中,签名版本从2到4。
现在看起来像:
AWS.config.update({
accessKeyId: 'AKID',
secretAccessKey: 'SECRET',
region: 'REGION',
signatureVersion:'v4'
});