IOException при запросе на веб сервер.

183
1
4
День добрый, при отправке запроса на веб сервер в ответ получаю 403, однако при открытие страницы в браузере все нормально.
Код:
URL site = new URL(Core.instance.report_url);
HttpURLConnection con = (HttpURLConnection)site.openConnection();
con.addRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.76 Safari/537.36"); 
con.setRequestMethod("POST"); 
con.setDoOutput(true);
BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(con.getOutputStream()));                            
String args = "text=test";                
LogHelper.log("Sending requst to " + site.toString() + " with args " + args);             
wr.write(args);
wr.flush();
Scanner httpResponseScanner = new Scanner(con.getInputStream()); 
String response = httpResponseScanner.nextLine();
httpResponseScanner.close();
Код:
2015-03-06 10:05:48 [INFO] [STDERR] java.io.IOException: Server returned HTTP response code: 403 for URL: http://sky-mine.ru/<...>
2015-03-06 10:05:48 [INFO] [STDERR]     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1626)
2015-03-06 10:05:48 [INFO] [STDERR]     at skymine.redenergy.report.gui.network.ReportPacketHandler.onPacketData(ReportPacketHandler.java:49)
2015-03-06 10:05:48 [INFO] [STDERR]     at cpw.mods.fml.common.network.NetworkRegistry.handlePacket(NetworkRegistry.java:243)
2015-03-06 10:05:48 [INFO] [STDERR]     at cpw.mods.fml.common.network.NetworkRegistry.handleCustomPacket(NetworkRegistry.java:233)
2015-03-06 10:05:48 [INFO] [STDERR]     at cpw.mods.fml.common.network.FMLNetworkHandler.handlePacket250Packet(FMLNetworkHandler.java:71)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.network.NetServerHandler.handleCustomPayload(NetServerHandler.java:1110)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.network.packet.Packet250CustomPayload.processPacket(Packet250CustomPayload.java:70)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.network.MemoryConnection.processReadPackets(MemoryConnection.java:80)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.network.NetServerHandler.networkTick(NetServerHandler.java:136)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.network.NetworkListenThread.networkTick(NetworkListenThread.java:57)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.server.integrated.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:108)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:703)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:599)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:123)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:497)
2015-03-06 10:05:48 [INFO] [STDERR]     at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16)
 
1,683
1
Может шлешь не так. Давай дам рабочий код post запроса
[merge_posts_bbcode]Добавлено: 06.03.2015 19:17:56[/merge_posts_bbcode]

Код:
 public static String JSONRequest(String url, String content) {
        try {
            byte[] contentBytes = content.getBytes("UTF-8");

            URLConnection connection = new URL(url).openConnection();
            connection.setDoInput(true);
            connection.setDoOutput(true);
            connection.setRequestProperty("Accept-Charset", "UTF-8");
            connection.setRequestProperty("Content-Type", "application/json");
            connection.setRequestProperty("Content-Length", Integer.toString(contentBytes.length));

            try (OutputStream requestStream = connection.getOutputStream()) {
                requestStream.write(contentBytes, 0, contentBytes.length);
            }
            String response;
            BufferedReader responseStream;
            if (((HttpURLConnection) connection).getResponseCode() == 200) {
                responseStream = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
            } else {
                responseStream = new BufferedReader(new InputStreamReader(((HttpURLConnection) connection).getErrorStream(), "UTF-8"));
            }

            response = responseStream.readLine();
            responseStream.close();

            if (((HttpURLConnection) connection).getResponseCode() != 200) {
                System.err.println("HTTP/POST return code!=200");
            }
            System.out.println(response);
            return response;
        } catch (Exception ex) {
            Logger.getLogger(LauncherUtils.class.getName()).log(Level.SEVERE, null, ex);
        }
        return null;
    }
 
Сверху