私はjavaからphpにjsonデータを投稿して表示する必要があるミニプロジェクト(RESTアプリケーション)に取り組んでいます。しかし、私は過去2日間試してもこの仕事を達成することができませんでした。だから私は別のファイルを作って、これがどのように動作するかをテストしました。ウェブブラウザでポストjsonデータを表示するにはどうすればよいですか?
次は私がNetBeansで実行私の.javaファイル
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
public class NewClass {
public static void main(String[] args) {
String json = "{\"message\":\"This is a message\"}";
HttpClient httpClient = new DefaultHttpClient();
try {
HttpPost request = new HttpPost("http://localhost/test/somesite.php");
StringEntity params =new StringEntity("message=" + json);
request.addHeader("content-type", "application/x-www-form-urlencoded");
request.setEntity(params);
HttpResponse response = httpClient.execute(request);
// handle response here...
System.out.println(EntityUtils.toString(response.getEntity()));
EntityUtils.consume(response.getEntity());
} catch (Exception ex) {
ex.printStackTrace();
} finally {
httpClient.getConnectionManager().shutdown();
}
}
}
次は* Cにある私のの.php(somesite.php)ファイルです:\ XAMPP \ htdocsに\テスト*。私はxamppを使用します。
<?php
if(isset($_POST["message"]) && !empty($_POST["message"]))
{
print_r($_POST);
$json_string = $_POST["message"];
$json = json_decode($json_string);
print_r($json);
}
?>
私はNetBeansでの.javaファイルを実行すると、私は次のようoutput window
を取得しかし、私は、私は何を取得ブラウザで私の.PHPページを更新するとき、私はblank page 方法を取得します.javaから.phpに投稿したjsonデータをブラウザに表示するにはどうすればよいですか?
私はjsonとphpを初めて利用しています。ありがとうございました。
空白のページで、エラーページではありませんか?エラーログを確認し、ブラウザコンソールを確認してください。お使いのissetの前に 'var_dump($ _ POST);'という方法でいくつかの詳細をエコーしてみてください – aynber