2017-01-21 2 views
0

По какой-то причине, когда я запускаю этот простой JavaScript фрагмент кода я получаю сообщение «Ошибка! Status = 404 Сообщение = ошибка»Ajax вызова на другой сайт

callPHP(1) 
 

 
function callPHP(args) 
 
{ 
 
    $.ajax({ 
 
     url: "http://lectiogroupgenerator.esy.es/index.php", 
 
     type: 'post', 
 
     data: { "json" : JSON.stringify(args) }, 
 
     dataType: "json", 
 
     success: function (data) 
 
     { 
 
      if (data) 
 
      { 
 
       alert(data); 
 
       return data; 
 
      } 
 
      else 
 
      { 
 
       alert("Data is empty"); 
 
      } 
 
     }, 
 
     error: function (xhr) 
 
     { 
 
      alert('Error! Status = ' + xhr.status + " Message = " + xhr.statusText); 
 
     } 
 
    }); 
 
    return false; 
 
}

Мой PHP файл только :

<?php 
 
?>

Я предполагаю, что 404 подразумевает, что php не может быть найден, но он существует, и я не знаю, почему он не может найти его, может быть, он имеет какое-то отношение ко мне, делая расширение chrome Google?

+0

Вам нелегко помочь нам. Это внутри сценария контента, и вы находитесь на сайте https? Что в manifest.json? Что вы видите при проверке отправленного запроса в панели панели devtools? Вероятно, вам потребуется выполнить запрос на скрипте [background/event page] (https://developer.chrome.com/extensions/overview#arch), но я просто догадываюсь. – wOxxOm

+0

Да, это выполняется с сайта https. Это, наверное, моя проблема. – Martin

+0

Пожалуйста, отредактируйте вопрос по теме: включите ** полный ** [mcve], который * дублирует проблему *. Включая * manifest.json *, некоторые из сценариев background/content/popup/HTML. Вопросы, требующие помощи по отладке («** почему этот код не работает? **)) должны включать: ► желаемое поведение, ► конкретную проблему или ошибку * и * самый короткий код, необходимый для его воспроизведения ** в вопросе сам**. Вопросы без четкого описания проблемы не полезны другим читателям. Смотрите: «** Как создать [mcve] **», [о каких темах я могу спросить здесь?] (Http://stackoverflow.com/help/on-topic) и [ask]. – Makyen

ответ

0

Возможно, это связано с проблемой CORS. http://lectiogroupgenerator.esy.es/index.php не разрешает HTTP-запросы с кросс-началом. Если это не так, попробуйте явно указать веб-сайт в разрешениях в файле манифеста, чтобы разрешить запросы на этот сайт и выходить на него.

+0

Уже добавлено в разрешениях. Как разрешить HTTP-запросы на кросс-начало на моем веб-сайте? – Martin

+0

Кажется, что CORS здесь не проблема! Ваш сайт не принимает данные типа «application/json». Он работает, если вы удалите строку 'dataType:" application/json "'. Возможно, что-то не так на принимающей стороне, а не на отправке. – acesmndr

+0

Вы отправляете обычный текст с сервера в качестве ответа и ожидаете json-текст в запросе ajax. – acesmndr

0

Проблема была вызвана Same-origin policy, она была решена, когда я получил сертификат SSL для своего сайта.

Смежные вопросы