2013-03-16 2 views

답변

6

프로덕션 환경에서 사용자를 가장하려면 서버에서 setUserId, 클라이언트에서 Meteor.connection.setUserId으로 전화하면됩니다. 자세한 내용은 내 blog post을 참조하십시오.

+1

철제 라우터를 사용하고 있고'Meteor.user()'를 사용하여 사용자가 waitOn 함수에 로그인했는지 확인하는 경우 등등. 'Tracker.autorun'에도 구독을해야한다는 뜻입니까? – MurWade

3

당신은 당신이 Meteor.userId을 사용할 때 이제 클라이언트 JS

Meteor.userId = function (impersonate_id) { 
    return (impersonate_id) ? impersonate_id : Meteor.default_connection.userId(); 
} 

Meteor.user = function (impersonate_id) { 
    var userId = Meteor.userId(impersonate_id); 
    if (!userId) 
     return null; 
    return Meteor.users.findOne(userId); 
} 

의 맨 위에 그것을 무시하고이 같은 것을 사용하거나 수 귀하의 자바 스크립트에 사람을 식별 할 수 Meteor.userId()Meteor.user()를 사용하는 경우 Meteor.user 어디서나 코드를 수정하십시오 Meteor.user & Meteor.userId은 인수를 허용합니다. 당신이 사용자를 가장 할 때 그래서 당신이 실제로 관리자 인 경우 또한이에만 작동합니다 그것은 당신이

Meteor.user("1"); //Loads the data for user with _id 1 
Meteor.user(); //Loads the actual logged in user 

로 로그인 할 사용자의 _id의 인수를 전달하고 기능을 사용하면 다음을 할 수 있습니다 게시 모든 사용자의 데이터보기

+0

하지만 가장이 발생했는지 어떻게 알 수 있습니까? 예를 들어, impersonation_id를 언제 전달해야하는지 어떻게 알 수 있습니까? 예를 들어 가장 (impersonation) 상태를 포함하는 연결 개체에 뭔가가 있습니까? – Aaron

관련 문제