2013-04-25 1 views
0

Я создаю простой webapp, который должен проверить ваш возраст и согласиться с условиями.
Чтобы сэкономить на передаче данных, я хочу использовать localStorage.Если параметр localStorage установлен, загрузите страницу; else redirect

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

Взрослый контент - две страницы; один - это форма, а другая - страница результатов.
Мне нужно добавить код, чтобы перенаправить, если localStorage.getItem() значение null.

Но сначала мне нужно убедиться, что вы проверите, прежде чем я смогу пойти на этот шаг.

Это то, что я до сих пор:

<a href="age.html" target="new" onclick="verCheck()">Order Form</a></li> 
function verCheck() { 
    var LS = localStorage.getItem('ageVerified'); 

    if (LS == "True") { 
     window.location.assign("/orderform.html") 
    } else { 
     alert("Error") 
     window.location.assign("/about.html") 
    } 
} 
+2

Вы понимаете, что любой (или должен сказать любой ребенок) с базовым пониманием Javascript может просто установить 'localStor age.ageVerified' сами, используя Firebug или аналогичную консоль браузера, верно? Если вы серьезно относитесь к принудительной проверке этой проверки, вы должны * делать это на серверной стороне каждый раз; любая клиентская технология, на которую вы полагаетесь (локальное хранилище, файлы cookie и т. д.), по определению редактируется клиентом/конечным пользователем. Кроме того, в любом случае «сэкономить на передачах данных» - своего рода глупая цель; если люди имеют достаточную пропускную способность для загрузки порно, у них есть достаточно, чтобы сделать дополнительный запрос на сервер проверки возраста. – machineghost

+0

как @machineghost сказал, что это крайне небезопасно, и вы не должны этого делать. – Markasoftware

+0

его не порно ее за алкоголем, его просто устранить любые юридические последствия, не прошу об этом. и в webapp важно, если клиент хочет сэкономить на пропускной способности, а не на компьютере, - это приложение для мобильного телефона – MPMullally

ответ

0

window.location.assign загружает документ, чтобы перезагрузить страницу просто присвоить URL для window.location.replace

function verCheck(){ 
    var LS = localStorage.getItem('ageVerified'); 
    if (LS == "True") { 
     window.location.assign("/orderform.html") 
    } else{ 
     alert("Error") 
     window.location.replace("/about.html"); 
    } 
} 
Смежные вопросы