2012-05-26 2 views
1

Я пытался получить доступ к различным доменам из своего JavaScript (чтобы вытащить заголовок страницы), но не может b.c. политики одного и того же происхождения.Как закладки (javascript в ссылке), проверенные серверами? Как обеспечивается безопасность?

Я понял, что JavaScript «установлен» в браузере через букмарклеты не сдерживается этой политикой.

Это заставило меня задуматься о том, как сохранена безопасность ... например, вкусные букмарклеты ... Я могу просто изменить их и начать ajaxing delicous.com ... Я не планирую делать это, но и кто-то мог это сделать это к букмарклету, который я создаю.

Как вы создаете защиту здесь?

Некоторые сайты разрешают публичный доступ через ajax?

ответ

2

Что касается сервера, то нет такой вещи, как AJAX. Запросы AJAX - это просто HTTP-запросы, как и любые другие.

Ограничение кросс-домена AJAX выполняется браузером ради избежания атак межсайтового скриптинга (вы не хотите, чтобы стороннее объявление имело доступ к вашим данным сеанса переполнения стека и могло отправлять их где-нибудь иначе, не так ли?).

Браузер (по-видимому) не ограничивает «букмарклеты» таким же образом. Если вы решили поместить немного скрипта в закладку, я думаю, что браузер с удовольствием выполнит его.

+0

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

+0

@ DG - Да, я понял, но не был уверен и не успел проверить. Вот почему я использовал слово «по-видимому» в круглых скобках. Тем не менее, разные браузеры могут относиться к этому немного иначе, чем другие, и это не меняет того факта, что ни одно из этих ограничений не обрабатывается на стороне сервера. Все это в том случае, если вы тот, кто проголосовал за мой ответ, я не думаю, что это было уместно. – JAAulde

+0

Ваш ответ имел вопиющую и потенциально очень вводящую в заблуждение фактическую ошибку в нем, но 3 upvotes. Я чувствовал, что нисходящее движение было необходимым корректирующим действием. Это не то, что я подтолкнул вас на отрицательную территорию. Если бы вы сказали: «Возможно, браузер (но я не тестировал) не ограничивает ...», я бы не отказался. Отредактируйте свой ответ соответствующим образом, и я удалю downvote. FYI, это стоит точек вниз, поэтому я не делаю это легкомысленно. –