如何将Amazon aws客户端javascript导入我的Ionic 2/Angular 2应用

How to import a Amazon AWS's client javascript into my Ionic 2/Angular 2 app?

本文关键字:Ionic 我的 应用 Angular 导入 javascript Amazon aws 客户端      更新时间:2023-09-26

我正在开发一个使用Amazon AWS生成的自定义客户端api的Angular 2/Ionic2应用程序。

这个api由一个javascript和它的依赖项组成。

通常我会把它放在html中的script标签中,但是我用的是typescript。

在主javascript中有一个对象是这样声明的:

var apigClientFactory = {};
apigClientFactory.newClient = function (config) {
    var apigClient = { };
    if(config === undefined) {
        config = {
            accessKey: '',
            secretKey: '',
            sessionToken: '',
            region: '',
            apiKey: undefined,
            defaultContentType: 'application/json',
            defaultAcceptType: 'application/json'
        };
    }
...

在服务中,我需要这样调用api:

    var apigClient = apigClientFactory.newClient();
    var params = {
      limit: 5
    };

    var body = {
    }
    var additionalParams = {
    }
    var headers = {
    }

    var queryParams = {
    }
    apigClient.cadastroOptions (params, body, additionalParams).then(function(result){
        var json = JSON.parse(result.data);
        console.log('Result', json);
    }).catch('Sucesso', function(json){
        console.log('Falha: ', json)
    });

它不是一个节点模块。这是一个以zip格式下载的api。

我如何在我的应用程序中导入它?

你需要从npm安装aws-sdk模块和它的类型。

  1. npm install aws-sdk --save
  2. typings install dt~aws-sdk --save --global

实际上,在你的项目中使用这个库可能会有所不同,但是angular-cli关于导入第三方库的指南可能会有所帮助(特别是任何给定部分的最后一步)。

我最近有这个问题,将脚本标签添加到您的index.html中,然后在您的组件中添加以下内容:

declare var apigClientFactory: any;
@Component({
selector: '<selector>',
templateUrl: './<html>',
styleUrls: ['<css>']
})
export class <your class> {
    constructor(){}
}

请注意,如果你使用的是webpack,那么它不会被添加到依赖项中。