相关疑难解决方法(0)

如何在Angular 2中导入非核心npm模块,例如(使用加密库)?

在我的Angular 2应用程序(SystemJS模块管理器,作为脚本语言的Typescript)中,我需要导入一个npm模块来处理加密(Crypto-JS; Forge-JS或任何其他服务目的)

CryptoJS的情况下,通过npm install*安装后我尝试添加:

  <script src="node_modules/crypto-js/crypto-js.js"></script>
Run Code Online (Sandbox Code Playgroud)

in index:html.

在我的服务(app/services/my-service.service.ts)我通过它导入它

  import {CryptoJS} from 'node_modules/crypto-js/crypto-js.js' // or /aes.js --> same issue
Run Code Online (Sandbox Code Playgroud)

但是,导入无法正常工作

 console.log(CryptoJS);
Run Code Online (Sandbox Code Playgroud)

打印未定义.

我还尝试添加模块路径

 System.config({
     // ...
     map: {
        CryptoJS
    }
}
Run Code Online (Sandbox Code Playgroud)

并通过我的服务导入它

 import {CryptoJS} from 'cryptoJs';
Run Code Online (Sandbox Code Playgroud)

虽然我不确定我应该在SystemJS配置中实际放入什么,但我尝试过的解决方案都没有.

编辑我也试过......

// import ... as to overcome no default export
import * as CryptoJS from 'node_modules/crypto-js/crypto-js.js';
Run Code Online (Sandbox Code Playgroud)

但是之后

 console.log(CryptoJS.); 
Run Code Online (Sandbox Code Playgroud)

不提供AES /任何方法(我的编辑通常建议我可以通过自动完成使用哪些方法)

编辑2现在感谢Thierry和PierreDuc的贡献很明显,打字和模块导入是无关联的概念.

然而,他们都没有工作.这就是我所做的:

我下载了CryptoJS打字文件,把它放在typings/cryptojs/cryptojs.d.ts中

然后我补充说

  /// …
Run Code Online (Sandbox Code Playgroud)

encryption npm angular

9
推荐指数
1
解决办法
1万
查看次数

在 javascript 中加密并使用 AES 算法在 C# 中解密

我尝试使用AES中的 AES 库进行角度加密。

我使用 AES 的方法加密了字符串CryptoJS.AES.encrypt()

这是我的代码:

  var txtloginKod = 'Some String...';             
  var key = CryptoJS.enc.Utf8.parse('8080808080808080');
  var iv = CryptoJS.enc.Utf8.parse('8080808080808080');
  var  encryptedlogin = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(txtloginKod), key,
  {
      keySize: 128 / 8,
      iv: iv,
      mode: CryptoJS.mode.CBC,
      padding: CryptoJS.pad.Pkcs7
  });
Run Code Online (Sandbox Code Playgroud)

该方法CryptoJS.AES.encrypt()将一个对象返回到我的encryptedlogin变量。

我不知道如何在 C# 中将此对象发送到我的 WCF Web 服务器

当我尝试发送整个对象(并定义 Web 服务方法以获取 C# 对象)时,出现以下错误:

“将循环结构转换为 JSON”

javascript encryption aes cryptojs

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

encryption ×2

aes ×1

angular ×1

cryptojs ×1

javascript ×1

npm ×1