Javascript 在PhantomJS/CasperJS中隐藏用户输入
我有一个CasperJS测试套件,其中我必须用用户名和密码填写登录表单。因为我不想在代码中输入密码,所以我做了如下操作:Javascript 在PhantomJS/CasperJS中隐藏用户输入,javascript,phantomjs,casperjs,Javascript,Phantomjs,Casperjs,我有一个CasperJS测试套件,其中我必须用用户名和密码填写登录表单。因为我不想在代码中输入密码,所以我做了如下操作: system.stdout.writeLine("Please enter password:"); var password = system.stdin.readLine(); this.fill('form:first-of-type',{ 'username': user, 'password': password },true); 这是可行的,但它
system.stdout.writeLine("Please enter password:");
var password = system.stdin.readLine();
this.fill('form:first-of-type',{
'username': user,
'password': password
},true);
这是可行的,但它会将密码留在控制台上,任何人都可以读取密码。有没有办法从视图中隐藏实际输入,或者在其位置显示******
或者,是否有另一种方法可以解决我错过的问题
编辑:我尝试使用
execFile
,但当我尝试运行read
时,它没有做任何事情,它只是返回,就像什么都没有发生过一样。其他外部程序工作正常。我发现了一个粗略的解决方法:
system.stdout.write("Please enter password:");
var password = system.stdin.readLine();
system.stdout.write("\033[1APlease enter password: \n");
将光标向上移动一行,然后打印密码。问题仍然存在,它仅在输入密码后隐藏密码。如果有人在看你打字,那不会有多大帮助。至少以后在控制台上看不到它