IAM 模块不包含在亚马逊托管的“标准”包中。
因此,您应该自定义构建您需要的库。
以下是您需要采取的步骤:
从亚马逊获取 SDK 代码:
$ git clone git://github.com/aws/aws-sdk-js
$ cd aws-sdk-js/
aws-sdk-js$ git checkout v2.1.28 # if you want a specific version
构建过程使用节点;执行 npm install 以确保您已安装工具和依赖项(当然,您还需要安装 node)。
现在,假设您要构建一个支持 S3、STS 和 IAM 的库。使用这个命令行:
aws-sdk-js$ node dist-tools/browser-builder.js s3,sts,iam > aws-sdk-s3-sts-iam.js
您可以使用任何适合您的命名约定,但如果您使用不同的自定义版本,我们发现上述命名约定最有帮助。
如果您想为您的版本缩小定制库,请改用以下命令行(它为节点设置正确的环境变量以供使用):
aws-sdk-js$ MINIFY=1 node dist-tools/browser-builder.js s3,sts,iam > aws-sdk-s3-sts-iam.min.js
如果您非常关心库的大小,或者您选择托管 Amazon js(也许您已经将它与您的其他东西捆绑在一起),那么无论如何使用这个过程可能是一个好主意,而且只有包括您实际需要的库。节省的费用不一定很大——因为无论如何都包含共享代码——但你最终可能会节省一些东西。例如,在添加了我们需要的 IAM(S3 和 STS 包含在托管构建中)之后,上面的示例(恰好是我们用于其中一个项目的示例)将总大小从 ~300K 减少到 ~200K。