2011-01-10 9 views
8

faktycznie jestem nowy w systemie Android i teraz muszę dodać pliki cookie w moim projekcie. używam HttpsUrlConnection. Oto, w jaki sposób robię żądanie i otrzymuję odpowiedź z serwera WWW, a teraz muszę dodać pliki cookie.jak korzystać z plików cookie w HttpsURLConnection w Androidzie

URL url = new URL(strUrl); 

HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); 

connection.setRequestMethod("POST");  

connection.setRequestProperty("Content-Type", 
    "application/soap+xml; charset=utf-8"); 

    connection.setRequestProperty("Content-Length", ""+ 
      Integer.toString(request.getBytes().length)); 

    connection.setUseCaches (false); 
    connection.setDoInput(true); 
    connection.setDoOutput(true); 


    // send Request... 
    DataOutputStream wr = new DataOutputStream (connection.getOutputStream()); 
wr.writeBytes (request); 
wr.flush(); 
wr.close(); 

//Get response... 
DataInputStream is = new DataInputStream(connection.getInputStream());  
String line; 
StringBuffer response = new StringBuffer(); 
while((line = is.readLine()) != null) { 
    response.append(line); 
    } 
is.close(); 
FileLogger.writeFile("Soap.txt", "RESPONSE: " + methodName + "\n" + response); 
HashMap<String, String> parameters = null; 
try { 
    parameters = SoapRequest.responseParser(response.toString(), methodName); 
    } catch (ParserConfigurationException e) { 
    // TODO Auto-generated catch block 
e.printStackTrace(); 
} catch (SAXException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 
return parameters; 

każda pomoc będzie wdzięczny, dzięki

Odpowiedz

14

Masz samouczek here (jest URLConnection, ale HttpsURLConnection jest podklasą więc powinien również działać).

Zasadniczo trzeba zrobić:

connection.setRequestProperty("Cookie", myCookie); 

gdzie myCookie ma postać "userId=igbrown" jeśli tylko jeden lub "userId=igbrown; sessionId=SID77689211949; isAuthenticated=true" jeśli wiele (separator jest średnik I spacje)

Powiązane problemy