Проверка http реферера из вызова ajax ... плюс я могу вернуть имя файла javascript после проверки? - PullRequest
0 голосов
/ 06 апреля 2011

Мы хотим разместить на нашем сайте элементы страницы, к которым сторонние поставщики могут получить доступ к использованию на своем сайте.

В моих тестах я использую JSONP для междоменной отправки назад JSON через PHP. Это работает.

У меня вопрос в два раза:

1.) Когда я выполняю AJAX-вызов на стороне клиента в jQuery через .GET, могу ли я проверять наличие http-реферера на стороне сервера? Я использую PHP для тестирования, но, скорее всего, живая версия будет на PERL. Мы используем white-validation, поэтому есть множество проверенных поставщиков, с которыми я буду проверять. Нужно ли использовать POST для получения реферера или я могу передать его через .GET?

2.) Если они являются утвержденным поставщиком, я хочу вернуть JSON с элементами страницы. Поскольку JSON немного длинен, есть ли способ вместо отправки обратно закодированного JSON отправить обратно имя файла javascript, содержащего JSON, с которым я могу разобрать?

Другими словами, я бы вернул имя файла.

1 Ответ

1 голос
/ 06 апреля 2011

используйте $_SERVER('HTTP_REFERER'), чтобы получить адресный адрес в php. Вам не нужно POST или GET или что-то еще, достаточно простого запроса.

php может включать файлы как контент, поэтому вам не нужно отвечать на имя файла, вы можете ответить на файл. без осложнений.

header('Content-type: application/json');
include('/files/json/filename.json');
...