アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下ソースで、ホームページのデータは取得できるのですが、クッキーが必要なページではうまく作動しません。
どのように改良すればよいでしょうか?
また、こういったプログラムを作るのに参考になる書籍をご存知でしたら教えてください。
よろしくお願いいたします。

import java.io.*;
import java.net.*;

class test {
public static void main(String[] args) throws Exception {

URL url = null;
BufferedReader in = null;
String readString = null;

url = new URL("http://www.yahoo.co.jp");

in = new BufferedReader(new InputStreamReader(url.openStream(),"JISAutoDetect"));
while((readString=in.readLine())!=null)
System.out.println(readString);
in.close();

}
}

A 回答 (3件)

おそらくクッキーの情報をサーバーへ返していないため、


サーバー側はクッキーの設定が無効だといってきたのだと思います。

もしかしたら、クッキーの仕組みをご存じないのでは?
    • good
    • 0

#1に関してですが、


それは、ブラウザの側の設定だと思いますが

例えば、IEでは、インターネットオプションのプライバシー設定を最高にするとクッキーの使用が無効になります。

これをサイトの側で変更することはできません。
ていうかできたらおかしいです。
イヤでしょ
    • good
    • 0

java.net.URL.openStream() ではなく,java.net.URL.openConnection() で java.net.HttpURLConnection を取得し,java.net.HttpURLConnection.getHeaderField() や java.net.HttpURLConnection.getHeaderFields() を使ってヘッダ情報からcookieを取り出せばよいのではないでしょうか。



>また、こういったプログラムを作るのに参考になる書籍をご存知でしたら教えてください。

書籍ではありませんが,オープンソースのJava製HTTPクライアントを作っている Jakarta Slide というプロジェクトがあるので,そのソースを参考にしてみてはどうでしょうか。

参考URL:http://jakarta.terra-intl.com/slide/

この回答への補足

回答いただきありがとうございます。

すみません。質問の仕方が間違っていました。

先のファイルを実行すると、某ページで、下記のようなエラーが出て正常に表示されません。そこで、何とか、クッキーが有効になっている状態にしたいのですが方法がわかりません。
<<<<エラー内容>>>>
現在お使いのブラウザの設定ではログインできません。<br>(クッキーを無効にする設定になっています)
<<<<>>>>

また、参考サイトを教えていただきありがとうございます。しかし、残念ながら、私のレベルでは何を言っているのかさっぱりでした。もしよろしければ、入門に適しているサイトや書籍を教えていただけましたら幸いです。

よろしくお願い致します。

補足日時:2004/09/01 18:47
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!