Проблема с jQuery .load () после публикации

#jquery #post #load

#jquery #Публикация #загрузить

Вопрос:

Этот код работает отлично:

 $(document).ready(function() {
  $("#submit").click(function(){
    $("#output").load("extract.php", {query: $("#input").val()} );
  });
});
  

Однако, когда я меняю ссылку с extract.php для того же самого файла на внешнем сервере скрипт перестает работать:

 $(document).ready(function() {
  $("#submit").click(function(){
    $("#output").load("http://example.com/extract.php", {query: $("#input").val()} );
  });
});
  

Согласно firebug, последний скрипт отправляет во внешний файл, но по какой-то причине ответа нет. Есть мысли? Очень ценю это.

Комментарии:

1. Вы не можете отправлять POST-запросы на внешний сервер, это называется Политикой того же источника .

2. политика того же источника в ajax — дублирование миллиона других вопросов

Ответ №1:

Цитирую @Rocket:

Вы не можете отправлять POST-запросы на внешний сервер, это называется Той же политикой происхождения.

Что вы, однако, можете сделать, так это использовать некоторый серверный код (например, PHP), размещенный локально, чтобы выполнить этот POST-запрос для вас. Вот одно из таких сообщений, описывающее один из способов сделать это: прокси jQuery AJAX (с данными POST) на PHP