2013-06-20 30 views
15

Tự hỏi nếu có cách nào để có được một danh sách các Meteor.methods hiện tại đã được đăng ký.Liệt kê các phương thức Meteor được đăng ký với Meteor.methods()?

ví dụ nếu một phương pháp bài được đăng ký như sau:

Meteor.methods({ 
    post: function() { 
    //code 
    } 
}); 

Có cách nào để truy cập vào một danh sách các phương pháp này? Lý tưởng nhất là nó sẽ được thông qua một phương pháp nhưng nếu nó được lưu trữ trong một biến có thể truy cập như Meteor .__ phương pháp mà sẽ làm việc là tốt.

Tôi đã chải qua tài liệu và Meteor toàn cầu trong trình duyệt nhưng không tìm thấy gì hữu ích. Bất kỳ ý tưởng?

Trả lời

14

Trên khách hàng mà bạn có thể làm:

Meteor.connection._methodHandlers 

Nó mang đến cho bạn một cuốn từ điển của tên hàm chức năng.

+2

Nó không liệt kê các phương pháp. – avalanche1

+0

@ avalanche1 Nó cho tôi. Có lẽ phương pháp của bạn không thực sự được đăng ký hay gì đó? –

11

Sau khi tìm hiểu thêm về phía máy chủ của sao băng, có vẻ như các phương thức được lưu trữ trong một mảng Meteor.default_server.method_handlers có thể truy cập được trên máy chủ nhưng không truy cập được trên máy khách.

Cách duy nhất để hiển thị phía máy khách dường như đang đăng ký phía máy chủ phương thức và sau đó trả về danh sách các phím.

+2

Nó không được tiếp xúc với phía khách hàng bởi vì điều đó có thể mở một lỗ hổng bảo mật tiềm năng – Marz

Các vấn đề liên quan