WebWorks AJAX Cross запрос домена

Я работаю над приложением playbook с помощью webworks sdk. Я пытаюсь сделать HTTP-запрос (метод: сообщение), отправив И получения данных. Я могу получить ответ от сервера, но сервер не может получить данные $POST, когда я пытаюсь отобразить $_POST['apiKey'], ничего не появляется, я 100 раз проверил свой код, проверил свой config.xml на uri, не могу найти ошибку.

TL; DR: не может отправлять, но может получать данные.

Мой код PHP-сервера:

echo "passed key is: ".$_POST["apiKey"]; // Nothing apears
echo "<br>";

if(md5($_SESSION['private_key'])===$_POST["apiKey"]){

}

else{
    echo "Invalid API Key"; // Always getting this response on client app
    exit();
}
?>

Мой код клиента JS:

function httpRequest(){
    var key="a984a4474cff54d8468a296edf3af65b";
document.getElementById("status").innerHTML="Reaching server...";
//////////////////////////////////////
var xdr = getXDomainRequest();
xdr.onload = function() {
    document.getElementById("status").innerHTML=xdr.responseText;
}

xdr.open("POST", "http://mydomain/index.php");
xdr.send("apiKey="+key);

}


Решено: При использовании метода POST вы должны определить заголовок запроса:

xdr.open("POST", "http://mydomain.com/index.php");
xdr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // with this line
xdr.send("apiKey="+key);

1 ответ

Решение

Решено: При использовании метода POST вы должны определить заголовок запроса:

xdr.open("POST", "http://mydomain.com/index.php");
xdr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // with this line
xdr.send("apiKey="+key);
Другие вопросы по тегам