多くのデバッグオプションを試しましたが、問題の特定に役立ったものはありませんでした。私はJavaとApacheHttpPostライブラリを使用しています。
現在、httpGetとhttpHeadは正常に機能していますが、httpPostで変数を正しく送信できません。サーバーにデバッグPHPスクリプトを設定して、の内容を単純にダンプします$_POST
。ターミナルでcurlリクエストを実行すると、正しく機能します。
コードスニペット:
// create new HttpPost object
postRequest = new HttpPost(url);
// add post variables
postRequest.setEntity(new StringEntity(body, ContentType.TEXT_HTML));
// execute request
response = executeRequest(postRequest);
文字列変数「body」は単なる文字列であり、現在「test=testing」が含まれています。このPHPデバッグスクリプトからの出力:
<?php
echo "Input Stream: ";
var_dump(file_get_contents('php://input'));
echo "POST Variables: ";
var_dump($_POST);
?>
は :
Input Stream: string(12) "test=testing"
POST Variables: array(0) {
}
なぜそれが$_POST
変数にピックアップされてダンプされないのか誰かが知っていますか?私はこれに何時間も費やしたので非常に苛立たしいです!
どんな助けもいただければ幸いです:)ありがとう