2

私はphantom jsとnodejs appを使用しているアプリケーションを持っています。私はそのノードappでいくつかのノードモジュールを使用していますが、これはファントムjsを通して実行されます。私はamazonノードaws-sdkを使用する必要があります。私は、ノードのアプリは、私がこのphantomjsがaws-sdkにアクセスしているときにノードモジュール 'crypto'を見つけることができません

var AWS = require('aws-sdk'); 

を行う一度ことを見つけることができることを

npm install aws-sdk 

でそれをインストールしますが、それは他のネイティブノードJSモジュールのエラーを促し開始、それらの3具体的には、「暗号」 、 'タイマー'、 'パス'。私は/ usr/lib/nodejsフォルダをチェックして、そこにあるので、どのようにphantomjsノードのアプリケーションがそれらを見つけることができないのですか? 特定のエラー

Error: Cannot find module 'crypto' 
phantomjs://platform/bootstrap.js:299 in require 
phantomjs://platform/bootstrap.js:263 in require 
phantomjs://platform/util.js:4 
TypeError: undefined is not a function (evaluating 'AWS.util.update') 

phantomjs://platform/core.js:16 
Error: Cannot find module 'path' 

phantomjs://platform/bootstrap.js:299 in require 
phantomjs://platform/bootstrap.js:263 in require 
phantomjs://platform/api_loader.js:3 
Error: Cannot find module 'events' 

phantomjs://platform/bootstrap.js:299 in require 
phantomjs://platform/bootstrap.js:263 in require 
phantomjs://platform/xml2js.js:12 
phantomjs://platform/xml2js.js:538 
TypeError: undefined is not an object (evaluating 'AWS.XML.Parser = require('./xml/node_parser')') 

私が直接ノードシェルに移動し、(「AWS-SDK」)を必要としますならば、それは正常に動作しません。 私はそれだけでphantomjsでは動作しません。この

phantomjs test.js 

または

/usr/bin/phantomjs test.js 

ようphantomjsからノードアプリを実行し、任意のアイデアやヘルプはここでいただければ幸いです。

答えて

2

PhantomJSはnode.jsと互換性がありません。

あなたは

/usr/bin/phantomjs test.js 

ようにそれを実行すると、あなたがPhantomJSの内部でスクリプトを実行します。

あなたはPhantomJSからのNode.jsアプリを起動したい場合は、this answer

を参照してください、それを行うには、execや産卵のメソッドを使用することができます
関連する問題