JAVAでTrackBackクライアントのプログラムを作成して、試してみます。See also ⇒ http://ew-and-f.hp.infoseek.co.jp/TECH/PERL/trackback_ping.html
■ソースは以下の通り
import java.io.*;
import java.net.*;
class TrackBackPing {
/* $Id: TrackBackPing.java,v 1.3 2004/05/09 08:34:31 kishi Exp kishi $ */
/* Description: TRACKBACKのテストです */
public static void main(String[] args){
try {
/* PING先のURLを指定する */
URL ping_url = new URL("http://www.the-biggest-blog.com/weblog/TB.cgi/190021");
// 送信電文の作成
String title = "柿食えば鐘が鳴るなり法隆寺";
String blog_name = "俳句BLOG";
String url = "http://www.the-biggest-blog.com/";
String excerpt = "良い句じゃ・・・・・・";
StringBuffer poststr = new StringBuffer();
poststr.append( "title=" + URLEncoder.encode(title, "UTF8") );
poststr.append( "&blog_name=" + URLEncoder.encode(blog_name, "UTF8") );
poststr.append( "&url=" + URLEncoder.encode(url, "UTF8") );
poststr.append( "&excerpt=" + URLEncoder.encode(excerpt, "UTF8") );
// URLにアクセス
URLConnection conn = ping_url.openConnection();
conn.setDoOutput(true);
// HTTPヘッダにUSER-AGENTを追加 -- 偽る(^^)
conn.setRequestProperty("HTTP_USER_AGENT", "WildCat2.0.1");
PrintStream pout =
new PrintStream(conn.getOutputStream());
pout.print(poststr);
pout.close();
BufferedReader reader =
new BufferedReader(
new InputStreamReader(
conn.getInputStream() ) );
// 返信電文を読む
String line;
while ( ( line = reader.readLine() ) != null ) {
System.out.println(line);
}
reader.close();
}
catch (Exception ex) {
System.out.println( ex.toString() );
}
}
}
■実行結果
$/cygdrive/d/Work/java-test/TrackBack> java -cp . TrackBackPing
?ソ<?xml version="1.0" encoding="UTF-8"?>
<response>
<error>0</error>
</response>
このサイトでは何故か、レスポンスXMLの先頭にゴミが付いている(笑)
なんでやねん?
XMLパーサーで処理すると多分エラーになるね・・・
戻る