1
0
mirror of https://gitcode.com/gh_mirrors/re/react-native-pushy.git synced 2025-10-08 22:45:16 +08:00
Code Issues Packages Projects Releases Wiki Activity GitHub Gitee

support login & logout & me

This commit is contained in:
tdzl2003
2016-02-14 16:47:58 +08:00
parent 74396f8426
commit 2c3a402f51
4 changed files with 90 additions and 15 deletions

View File

@@ -3,11 +3,45 @@
*/
const {question} = require('./utils');
const {
post,
get,
replaceSession,
saveSession,
closeSession,
} = require('./api');
const crypto = require('crypto');
function md5(str) {
return crypto.createHash('md5').update(str).digest('base64');
}
exports.commands = {
login: async function ({args}){
const username = args[0] || await question('user:');
const password = args[1] || await question('password:', true);
const login = args[0] || await question('user:');
const pwd = args[1] || await question('password:', true);
const {token} = await post('/user/login', {
login,
pwd: md5(pwd),
});
replaceSession({token});
await saveSession();
console.log('OK.');
},
logout: async function (){
await closeSession();
console.log('Logged out.');
},
me: async function (){
try {
const me = await get('/user/me');
console.log(me);
} catch (e) {
if (e.status === 401) {
console.log('Not loggined.\nRun `pushy login` at your project directory to login.');
} else {
throw e;
}
}
}
}
}