2

在 Postman 中工作我正在尝试使用节点的 aws-sdk 从 Cognito 调用 jwtToken 但我收到以下错误:

评估预请求脚本时出错:错误:找不到模块“aws-sdk”

这是我的密码:

const AWS = require('aws-sdk');
var authenticationData = {
    Username: 'username',
    Password: 'password',
};
var authenticationDetails = new 
AmazonCognitoIdentity.AuthenticationDetails(authenticationData);
var poolData = {
    UserPoolId: 'us-east-1_xxxxxx',
    ClientId: 'xxxxx'
};
var userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
var userData = {
    Username: 'username',
    Pool: userPool
};
var cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
cognitoUser.authenticateUser(authenticationDetails, {
    onSuccess: function(result) {
        var accessToken = result.getAccessToken().getJwtToken();
        var idToken = result.idToken.jwtToken;
    },
});
pm.globals.set("token", idToken);

到目前为止,我运行的唯一命令是:brew install node
 和npm install aws-sdk

我确定我缺少某种配置来调用模块,任何帮助都可以!谢谢!

4

1 回答 1

1

似乎 Postman Sandbox 无法获取脚本的外部依赖项。

您可以利用eval()Javascript 函数通过将代码存储在邮递员全局或环境变量中来导入其他 Javascript 代码。

例子:eval(postman.getGlobalVariable('aws-sdk-code'))

请参阅提示 #5:http: //blog.getpostman.com/2017/07/28/api-testing-tips-from-a-postman-professional/

此外,一旦代码执行,您可能会遇到稍后的问题,因为您似乎在请求包中的AmazonCognitoIdentityamazon-cognito-identity-js

https://www.npmjs.com/package/amazon-cognito-identity-js

于 2019-01-23T16:01:35.267 回答