PHPプログラムの実行
サーバ上のPHPプログラムをPOST型で送受信することによって実行します。
POST型送受信は以下の手順で行います。
●URL接続オブジェクトの取得
・URLクラスを生成する。
・URLクラスのgetOutputStreamメソッドでURLConnectionを取得する。
・URLConnectionのsetDoOutputをtrueにする。
●送信する
・URLConnectionのgetOutputStreamで、OutputStreamを取得し、 OutputStreamWriter(OutputStream)を使って送信。
・送信クローズ
●受信する
・URLConnectionのgetInputStreamで、InputStreamを取得し、InputStreamReader(InputStream)を使って受信。
・受信クローズ
■注意点
・送信の後、受信する。
・送信後、クローズしないと、送信されない。
・URLConnectionは、送信と受信で同じコネクションを使う。
・URLConnectionのsetDoOutputをtrueにする。
package test;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;
public class Test {
public static void main(String[] args) {
try {
URL testURL = new URL("http://127.0.0.1/test.php");
URLConnection con = testURL.openConnection();
con.setDoOutput(true);
// 送信
OutputStreamWriter osw = new OutputStreamWriter(con.getOutputStream());
BufferedWriter bw = new BufferedWriter(osw);
// POSTの内容
bw.write("message=TESTメッセージ");
bw.close();
osw.close();
// 受信
InputStreamReader isr = new InputStreamReader(con.getInputStream());
BufferedReader br = new BufferedReader(isr);
// 1行ずつ書き出す
String line;
while((line=br.readLine()) != null) {
System.out.println(line);
}
br.close();
isr.close();
} catch(Exception e) {
e.printStackTrace();
}
}
}
PHPプログラム
<?php
$message = $_POST['message'];
// 何らかの変換処理を行う
// $conv_message = ....
echo $conv_message;
?>