2015-05-28 15 views
5

Làm cách nào để thêm người dùng vào ứng dụng của tôi bên ngoài ứng dụng được triển khai? Tôi không muốn cho phép người dùng có thể tạo tài khoản bên trong ứng dụng. Tôi có thể tạo một số tên người dùng và mật khẩu từ dòng lệnh và sau đó cung cấp cho một vài người dùng để kiểm tra ứng dụng không?MeteorJS cách thêm người dùng từ dấu nhắc lệnh

Hãy cho tôi biết nếu bạn cần thêm thông tin hoặc nếu tôi không rõ ràng. Cảm ơn vi đa danh thơi gian cho tôi.

Trả lời

7

Cấp rằng bạn đã cài đặt gói accounts-password. (Bạn có thể làm kể từ khi bạn đã có đăng nhập thiết lập.)

Bạn có thể khởi meteor shell và nhập

Accounts.createUser({username: 'john', password: '12345'})

này sẽ chăm sóc của tất cả các bcrypting cho bạn. Bạn cũng có thể viết kịch bản này.

Tài liệu liên quan có nhiều thông số tùy chọn hơn là here.

+0

Đó là loại kỹ thuật không phải là lệnh shell nhưng một nút điều khiển Node REPL, nhưng nó vẫn còn cách dễ dàng hơn so với giải pháp được đề xuất khác! Bạn cũng có thể gửi một liên kết đến tài liệu liên quan/giải thích công nghệ của 'sao băng shell'? –

+1

Vui, grepping các tài liệu cho tôi không có gì về 'meteor shell' – oivvio

+1

Bạn có thể phải thu thập thông tin xung quanh diễn đàn, trang web hoặc một số nơi khác để nhận dữ liệu đó. MDG không nhất quán về tài liệu gần đây. –

0

Bạn có thể thêm người dùng từ dấu nhắc lệnh nhưng không dễ dàng.

Về cơ bản, bạn cần phải chạy một cái gì đó như thế này từ mongo. Để đơn giản, tôi sẽ không thêm mã bcrypt để tạo mật khẩu.

Thay vào đó bạn có thể sử dụng mật khẩu sao băng chung (mặc định). Để tạo ứng dụng sao băng, hãy thêm vào accounts-password và tạo tài khoản người dùng. Sử dụng giá trị services.password.bcrypt cho tất cả người dùng). Khi bạn tạo tài khoản người dùng, bcrypt này đại diện cho mật khẩu của người dùng đã tạo.

Sau đó, bạn có thể tạo ra một kịch bản mặc định:.

var user = { 
    "createdAt": new Date(), 
    "emails": [ ], 
    "username": "<username>", 
    "profile": { 
    "name": "<Name>" 
    }, 
    "services": { 
    "password": { 
     "bcrypt": "$2a$10$eUVSifclpbABCDEFGHIJKLmnopqr12323112ABBBCEDOINg2A7q0e" 
    }, 
    "resume": { 
     "loginTokens": [ ] 
    } 
    } 
} 

db.users.add(user); 

Sau đó, bạn có thể chạy kịch bản này (hãy chắc chắn để thay thế và giá trị Ngoài ra _id nếu bạn có thể với một chuỗi ngẫu nhiên cách MongoDB này sẽ tạo ra. các _id như một ObjectID

Sau đó, bạn có thể chạy kịch bản này (nếu bạn gọi nó là myjsfile.js) từ dấu nhắc lệnh (nếu Mongo là trên cổng địa phương 3001):.

mongo localhost:3001/meteor myjsfile.js 
Các vấn đề liên quan