2015-10-20 61 views
1

我在东西的NodeJS工作,我期待用谷歌端到端加密节点JS

https://github.com/google/end-to-end

实现的东西,但是当我编译的版本,它不似乎对工作的NodeJS,但它确实在浏览器上

是否有工作是任何实施的NodeJS的

https://github.com/google/end-to-end

available?

+0

你的意思是你想运行从服务器的Node.js浏览器扩展? –

+0

是的,有没有办法做到这一点。 – Saleeh

+1

我不这么认为......?它似乎不太可能(只需将代码放在服务器上即可从服务器运行全部或部分扩展端点)。不过,也许有人在这里比我更聪明。 –

回答

2

是的,有一种方法可以让你在nodejs中使用它。这有点破解,但可以通过使用闭包方式加载它来实现。

首先建立它,因此它产生一个deps.js

cd end-to-end; 
./do.sh build_library 

然后你就可以覆盖导入功能做加载库的工作。

require('./lib/closure-library/closure/goog/bootstrap/nodejs.js') 

global.CLOSURE_IMPORT_SCRIPT = function(src) { 
    var E2E_PATH = './'; 
    var CLOSURE_SOURCE = './lib/closure-library/closure/goog/'; 
    try { 
    require(CLOSURE_SOURCE + src); 
    } catch (err) { 
    require(E2E_PATH + src); 
    } 
    return true; 
} 

require('./build/deps.js'); 
goog.require('e2e.openpgp.asciiArmor'); 

console.log(e2e.openpgp.asciiArmor.encode('MESSAGE', e2e.stringToByteArray('test'))); 

更新:我添加了一个包来完成:https://www.npmjs.com/package/e2enode

+1

这只是工作好,特别感谢包 – Saleeh