2016-08-25 8 views
0

最初にpfx certficateをpemにエクスポートし、opensslでキーをエクスポートしました(問題の可能性がある場合)。私は、client.setSecurity(新しいsoap.ClientSSLSecurit())を使用するtridしかし、私はクライアントが未定義を取得します。Nodejs、soap、callbackは関数ではありません

私のコードは次のようになります:

var soap = require('soap'), 
    fs = require('fs'); 
var url = 'tes.com'; 

var auth = "Basic " + new Buffer("user" + ":" + "password").toString("base64") 



soap.createClient(url, {wsdl_options: { 
    cert: fs.readFileSync('cert/certificate.pem'), 
    key: fs.readFileSync('cert/certificate.key') 
    } 
}, { wsdl_headers: {Authorization: auth} }, function(err, client) { 


    client.describe(); 

}); 

私はこのエラーを取得していますし、間違っているのか分からない:

callback(err, wsdl && new Client(wsdl, endpoint, options)); 
    ^

TypeError: callback is not a function 
    at D:\web\mobile\node_modules\soap\lib\soap.js:50:5 
    at D:\web\mobile\node_modules\soap\lib\soap.js:33:16 
    at D:\web\mobile\node_modules\soap\lib\wsdl.js:2167:9 
    at Request._callback (D:\web\mobile\node_modules\soap\lib\http.js:114:14) 
    at self.callback (D:\web\mobile\node_modules\request\request.js:187:22) 
    at emitOne (events.js:96:13) 
    at Request.emit (events.js:188:7) 
    at Request.onRequestError (D:\web\mobile\node_modules\request\request.js:813:8) 
    at emitOne (events.js:96:13) 
    at ClientRequest.emit (events.js:188:7) 

TNX miha

答えて

2

あなたの引数が正しくありません。このように修正してください:このため

soap.createClient(url, {wsdl_options: { 
    cert: fs.readFileSync('cert/certificate.pem'), 
    key: fs.readFileSync('cert/certificate.key') 
    }, 
wsdl_headers: {Authorization: auth} }, function(err, client) { 


    client.describe(); 

}); 
+0

Thxを:)は、私はそれを修正したが、今になっ: client.describe(); ^ TypeError: Cannot read property 'describe' of undefinedat D:\web\mobile\app.js:26:8 at D:\web\mobile\node_modules\soap\lib\soap.js:50:5 at D:\web\mobile\node_modules\soap\lib\soap.js:33:16 at D:\web\mobile\node_modules\soap\lib\wsdl.js:2167:9 at Request._callback 問題がどこにあるか知ってどのように?問題が証明書やその他のものである場合にデバッグするにはどうすればよいですか? tnx – user2017319

+0

@ user2017319 'err'オブジェクトをチェックしてください。 –

+0

tnx @Ebrahim Pasbaniあなたのためにすばやく返信してください。 これはエラーの内容です:エラー:TCP.ConnectWrapのexports._exceptionWithHostPort(util.js:1030:20)でObject.exports._errnoException(util.js:1007:11)にETIMEDOUT xxx.xxx.xxx.xxx:443を接続します。 .afterConnect [as oncomplete](net.js:1080:14)25 8月10:07:36 - [nodemon]アプリがクラッシュしました。ファイルの変更を待ってから起動します。 これはsslまたはsometingですか? tnx – user2017319

関連する問題