2012-04-07 10 views
0

私のプログラムでクライアントプログラムを書くときに、クライアントがサーバに2つのStringを送ります。最初はウェブアドレスで、もう1つはウェブアドレスですuser.butについてのいくつかのランダムな情報は、URLアドレスがサーバに到着したとき、私はこの例外を取得することです:HTTPレスポンスコード:403クライアントからサーバにURLアドレスを送信するとき

Exception in thread "main" java.io.IOException: Server returned HTTP response code: 403 for URL: http://www.google.com.hk/search?hl=en&source=hp&q=java&gbv=2 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1245) 
    at java.net.URL.openStream(URL.java:1009) 
    at server.Server.processClient(Dom.java:124) 
    at server.Server.run(Dom.java:90) 
    at server.Server.main(Dom.java:155) 
Java Result: 1 

しかし、私は禁止応答を取得する理由はわかりません。

クライアント側

   private static BufferedWriter toServer; 
.... 

    public void progressUpdated(NavigatorProgressEvent npe) { 



      Matcher matcher = pattern.matcher (npe.getUrl().toString()); 


      if (matcher.matches()) 
         { 
       System.out.println(npe.getUrl()); 
         toServer.println(npe.getUrl().toString()); 


           } 

サーバー側

... 
    url = new URL(fromClient.readLine()); 

....

+0

ソースコードも入れてください。 – dash1e

+0

@ dash1e更新情報 – lonesome

答えて

0

はたぶん、あなたはあなたのヘッダー要求で "ユーザーエージェント" を欠場。

すると、このコードを追加して試してみてください:あなたは、ユーザーエージェント名を指定しない場合

httpUrlConnection.setRequestProperty("User-Agent","MyUserAgentName"); 

Googleが応答しません。良いユーザーエージェント名を選択してください:D

+0

は何ですか?それ以上説明できますか? – lonesome

+0

あなたは 'HttpUrlConnection'を使っていますか? – dash1e

+0

はい、スタックトレースでもわかるように、 – lonesome

関連する問題