gpt4 book ai didi

javascript - 在带有 browserify 的浏览器中使用 aws-sdk 的问题

转载 作者:行者123 更新时间:2023-11-29 10:03:51 24 4
gpt4 key购买 nike

我正在开发使用 aws-sdk 的基于浏览器的应用程序。我正在为我的应用程序代码使用 browserify,但还没有弄清楚如何将 aws 引入其中。我尝试了几种不同的方法:

//MyApp.js - Take 1 using downloaded minified version
var AWS = require ('./aws-sdk.min.js');
...
AWS.config.region='us-east-2';
...

导致 无法设置未定义的属性“区域”

我猜这是行不通的,因为 browserify 没有解析缩小的代码。

//MyApp.js - Take 2 using downloaded development version
var AWS = require ('./aws-sdk.js');

这不会编译。 Browserify 报告错误:找不到模块“../lib/core”

是否有我缺少的技巧?

最佳答案

当我在浏览器中使用 AWS 时,我会根据需要的服务设置区域,例如:

new AWS.EC2({apiVersion: '2016-11-15', credentials, region})

所以这让我想知道,也许你下载的版本是封装的,没有为 browserify 暴露任何东西。

首先我在浏览器中测试版本如下:

console.log(AWS)
<script src="https://cdnjs.cloudflare.com/ajax/libs/aws-sdk/2.184.0/aws-sdk.min.js"></script>

一切看起来都不错,所以我继续在 browserify 上进行测试。

事实证明,当您这样做时,您正在重新分配 AWS 全局变量:

var AWS = require ('./aws-sdk.min.js');

但是你已经捆绑了它,所以你很好,你需要做的是:

require ('./aws-sdk.min.js');
// And then use it happily
AWS.config.region='us-east-2';

无需重新分配 AWS 全局变量

关于javascript - 在带有 browserify 的浏览器中使用 aws-sdk 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48323288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com