2016-04-21 58 views
0

這個流星服務器代碼預計console.log客戶端標題,但connection對象是未定義的。服務器內部方法調用,this.connection返回undefined

如何獲取服務器代碼中的客戶端頭?由於

//server.js

Meteor.methods({ 
'someName':() => { 
    let header = this.connection.httpHeaders; 
    console.log(this.connection); 
} 
}); 



// client.js 

Meteor.call('someName', params, (err, res) => { 

    } 
); 

回答

0

您使用箭頭功能的方法回調。箭頭函數綁定的值爲this,當您的方法被調用時,Meteor無法覆蓋它。我知道JavaScript是一個令人沮喪的方面。使用常規的JavaScript功能,它

修復:

Meteor.methods({ 
    'someName': function() { 
    let header = this.connection.httpHeaders; 
    console.log(this.connection); 
    } 
});