2008-11-13 8 views
2

Мне нужно приложение Javascript, которое при запуске запрашивает пароль для ввода пароля, и если пароль верен, скрипт заставляет веб-страницу закрываться. Если пароль неверен, сценарий предлагает ввести пароль для повторного ввода.Простой пароль Javascript Code?

Я планирую загрузить этот скрипт на свой мобильный телефон, который не имеет защищенной паролем функции блокировки.

ответ

3

Не знаю, если это работает на свой мобильный телефон, но он делает с моим браузером:

<head> 
<script language="JavaScript"> 

var pass_entered; 
var password="cool"; 

while (pass_entered!=password) { 
    pass_entered=prompt('Please enter the password:',''); 
} 

self.close(); 

</script> 
</head> 
+2

Это просто отдает пароль. Любой может читать javascript. – 2008-11-13 17:48:43

2

Хорошо, у нас есть два подхода.

  1. Мы все можем прочитать javascript, так что если человек действительно откроет ваш код, он увидит пароль.
  2. С помощью ajax проверьте пароль на определенной странице.

function passWrdAPI() { 
    this.getHX = function() { 
     var hx; 
     try { 
      hx = new XMLHttpRequest(); 
     } 
     catch(e) { 
      try { 
       hx = new ActiveXObject("Microsoft.XMLHttp"); 
      } 
      catch(ex) { 
       hx = new ActiveXObject("Msxml2.XMLHttp"); 
      } 
     } 
     return hx; 
    } 

    this.password = "mypass"; 
    this.checkPwd = function(pass) { 
     if (pass != this.password) { 
      // Or close or redirect 
      alert('Wrong!'); 

      window.close(); //or 
      location.href = 'http://www.google.com'; 
     } 
    } 
    this.checkPwdPage(page, pass) { 
     var hx = this.getHX(); 
     if (hx != null) { 
      hx.open('GET',page + "?mypwd=" + pass); 
      hx.onreadystatechange = function() { 
       if (hx.readyState == 4) { 
        if (hx.responseText == 'false') { 
         // Or close or redirect 
         alert('Wrong!'); 

         window.close(); //or 
         location.href = 'http://www.google.com'; 
        } 
       }   
      } 
      hx.send(null); 
     } 
     else { 
      alert('error!'); 
     } 
    } 
} 

Использование:

 
for the first approach: 

var check = new passWrdAPI(); 
check.checkPwd(THEPASSENTERED); 

for the second: 

var check = new passWrdAPI(); 
check.checkPwdPage(YOURPAGE, THEPASS); 

Я не знаю, будет ли он работать на свой мобильный телефон =/

Извините, если я не помогу .. до свидания!

3

Javascript «блокировка клавиатуры» на мобильный телефон, вероятно, будет тривиальным работать вокруг.

В любом случае, если вы действительно хотите проверить пароль в Javascript, вы можете, по крайней мере, избегать размещения его в текстовом виде в источнике страницы.

Получите MD5 JS implementation и вместо этого сравните (соленый!) Хэш-код пароля.