Как видно из блога GitHub , они реализовали HTML5 JavaScript pushState
функцию просмотра дерева (для современных браузеров), обеспечивающую навигацию AJAX без хэш-взрыва .
Код прост:
$('#slider a').click(function() {
history.pushState({ path: this.path }, '', this.href)
$.get(this.href, function(data) {
$('#slider').slideTo(data)
})
return false
})
Это довольно элегантно позволяет им:
- Запросить только новый контент через AJAX вместополная страница
- Анимируйте переход
- И измените URL браузера (не только
#
, как это делает Twitter - twitter.com /stackexchange → twitter.com / #! / stackexchange )
Мой вопрос заключается в том, как JavaScript предотвращает использование pushState
одним веб-сайтомподражать другому, приводя к убедительной фишинговой атаке ?
По крайней мере, кажется, что домен не может быть изменен, но как насчет нескольких путей внутри сайта, возможно, несколькихнеродственные и недоверяющие провайдеры контента?Может ли один путь (IE / joe ) по существу имитировать другой (pushState / jane ) и предоставлять имитирующий контент с возможными злонамеренными целями?