public class CookieManager
{
private static CookieManager instance = null;
private static final String COOKIE_ID = "SESSION";
private CookieManager(){ }
public static CookieManager getInstance()
{
if( instance == null )
instance = new CookieManager();
return instance;
}
public String doPost(String urlString, String data, String cook)
throws Exception
{
List<String> cookie = null;
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setInstanceFollowRedirects(false);
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
if( cook != null )
connection.setRequestProperty("Cookie", cook);
connection.setDoOutput(true);
DataOutputStream wr = new DataOutputStream (connection.getOutputStream());
wr.writeBytes(data);
wr.flush();
Map<String,List<String>> headerFields = connection.getHeaderFields();
Set<String> set = headerFields.keySet();
Iterator<String> itor = set.iterator();
while (itor.hasNext())
{
String key = itor.next();
if( key != null )
{
if( key.equals("Set-Cookie") )
{
cookie = headerFields.get(key);
}
}
}
wr.close();
if( cookie != null )
{
itor = cookie.iterator();
while( itor.hasNext() )
{
String return_cookie = itor.next();
if( return_cookie.contains(COOKIE_ID) )
return return_cookie;
}
}
return null;
}
public URLConnection setCookie(String urlString, String cookie)
throws Exception
{
URLConnection conn = null;
URL url = new URL(urlString);
conn = url.openConnection();
conn.setRequestProperty("Cookie", cookie);
conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setDoOutput(true);
conn.setUseCaches(false);
conn.connect();
return conn;
}
}
String session = CookieManager.getInstance().doPost(loginurl, "UserID=" + id + "&Password=" + pwd, null);
이런식으로 아이디와 패스워드를 입력하면 로그인되게해서 데이터를 파싱하려고합니다
이클립스로에서는 저렇게 소스를 짜서 잘쓰고있었는데
제가 안드로이드가 처음이라 안드로이드로에서는 되질 않네요
DataOutputStream wr = new DataOutputStream (connection.getOutputStream());
이부분이후로 진행되지 않습니다 부탁드립니다 8ㅅ8