안녕하세요.
카카오톡과 같은 채팅 앱을 만들고 있는데,
대화목록 등을 httpget으로 가져옵니다.
그런데, 이게 잘 가져오다가 가끔
02-27 23:56:40.804: W/System.err(3100): org.apache.http.conn.HttpHostConnectException: Connection to http://cjy57.cafe24.com refused
02-27 23:56:40.804: W/System.err(3100): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:183)
02-27 23:56:40.804: W/System.err(3100): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
02-27 23:56:40.804: W/System.err(3100): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
02-27 23:56:40.804: W/System.err(3100): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
02-27 23:56:40.812: W/System.err(3100): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
02-27 23:56:40.812: W/System.err(3100): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:653)
02-27 23:56:40.812: W/System.err(3100): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:627)
02-27 23:56:40.812: W/System.err(3100): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:616)
02-27 23:56:40.812: W/System.err(3100): at kr.chat.RoomChatParseTask.getList(RoomChatParseTask.java:129)
02-27 23:56:40.820: W/System.err(3100): at kr.chat.RoomChatParseTask.doInBackground(RoomChatParseTask.java:52)
02-27 23:56:40.820: W/System.err(3100): at kr.chat.RoomChatParseTask.doInBackground(RoomChatParseTask.java:1)
02-27 23:56:40.820: W/System.err(3100): at android.os.AsyncTask$2.call(AsyncTask.java:264)
02-27 23:56:40.820: W/System.err(3100): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
02-27 23:56:40.820: W/System.err(3100): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
02-27 23:56:40.820: W/System.err(3100): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
02-27 23:56:40.820: W/System.err(3100): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
02-27 23:56:40.820: W/System.err(3100): at java.lang.Thread.run(Thread.java:856)
02-27 23:56:40.820: W/System.err(3100): Caused by: java.net.ConnectException: failed to connect to /118.218.219.125 (port 80): connect failed: ETIMEDOUT (Connection timed out)
02-27 23:56:40.820: W/System.err(3100): at libcore.io.IoBridge.connect(IoBridge.java:114)
02-27 23:56:40.820: W/System.err(3100): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
02-27 23:56:40.820: W/System.err(3100): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
02-27 23:56:40.820: W/System.err(3100): at java.net.Socket.connect(Socket.java:842)
02-27 23:56:40.820: W/System.err(3100): at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
02-27 23:56:40.820: W/System.err(3100): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
02-27 23:56:40.820: W/System.err(3100): ... 16 more
02-27 23:56:40.820: W/System.err(3100): Caused by: libcore.io.ErrnoException: connect failed: ETIMEDOUT (Connection timed out)
02-27 23:56:40.820: W/System.err(3100): at libcore.io.Posix.connect(Native Method)
02-27 23:56:40.820: W/System.err(3100): at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:75)
02-27 23:56:40.820: W/System.err(3100): at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
02-27 23:56:40.820: W/System.err(3100): at libcore.io.IoBridge.connect(IoBridge.java:112)
02-27 23:56:40.820: W/System.err(3100): ... 21 more
02-27 23:56:40.820: W/System.err(3100): +++ LOG: entry corrupt or truncated
02-27 23:56:40.820: W/System.err(3100): +++ LOG: entry corrupt or truncated
HttpPost request = new HttpPost($url);
ChatApplication.setHeader(request);
Vector<NameValuePair> nameValue = new Vector<NameValuePair>();
nameValue.add(new BasicNameValuePair("uid", $uid));
nameValue.add(new BasicNameValuePair("rid", $rid));
nameValue.add(new BasicNameValuePair("msg", $msg));
request.setEntity(makeEntity(nameValue));
HttpClient client = new DefaultHttpClient();
ResponseHandler<String> reshandler = new BasicResponseHandler();
res = client.execute(request, reshandler);
브라우저에서는 잘 작동하길래 혹시나해서 헤더에 각종 값들을 설정해줬습니다.(user-agent등)
그런데 그래도 이런 현상이 지속되네요.
log를 여기저기 찍어본 결과 client.execute부분에서 못 넘어가던데, 혹시 이유 아시는 분 계신가요?
서버는 cafe24쓰고, php로 만들었습니다.