3

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);
4

1 に答える 1

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);
于 2012-11-22T15:25:23.983 に答える