@newaitix

Как реализовать кроссдоменный ajax методом post?

Не могу сделать кроссдоменный запрос методом post. Возможно ли это реализовать ? Что необходимо на стороне сервера в ответе ?
var body = 'name=' + encodeURIComponent('111') +
  '&surname=' + encodeURIComponent('111');
      var xhr=new XMLHttpRequest();
      xhr.onreadystatechange=function(){
        if (this.readyState==4&&this.status==200){
          document.body.innerHTML=string;
        }
      };
      xhr.open('POST',items.url,true);
      xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded')
      xhr.send(body);
  • Вопрос задан
  • 176 просмотров
Решения вопроса 1
@karminski
Senior PHP /React.js developer
Вам нужно отправлять дополнительные заголовки. Почитайте про CORS
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Morfeey
@Morfeey
А лучше используй курлы.
например вот так:
function post($url, $data) {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    curl_close($ch);
    return $response;
}
$data = [
"json_string" = '{"key":"value"}';
];

post("my-second.domen/api.php", $data);

А на другой стороне уже обрабатывай как обычный $_POST["json_string"].
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы