0
nodejsでモジュールを作成しようとしています。そのため、コンストラクタとメソッドを持つClientというオブジェクトを作成します。Nodejsオブジェクトが初期化された後にのみオブジェクトのメソッドを実行する
問題は、コンストラクターが(要求を使用して)非同期要求を実行し、メソッドが正しく呼び出されるために構築からのものを必要とすることです。
どのようにコンストラクタを同期させることができますか?
function Client(id){
var token;
o = {
method: 'POST',
url: url + '/getToken',
headers: headers,
json: true,
body: id }
request(o).then(function(body) {
token = JSON.parse(body).token
})
function getValue(){
return new Promise(function(ff, rj) {
o = {
method: 'GET',
url: url + '?token=' + token,
headers: headers
}
request(o).then(function(body) {
ff(JSON.parse(body).value)
})
})
}
return{
getValue
}
}
私は私はそれを行うことができますどのように (トークンがまだ値を持っていない)のgetValueがエラーを返すとき、この
var client = Client(id)
client.getValue().then(console.log)
ような何かをしたいが、要求のための非同期の?ありがとうございました