Hi Junx.
Ich möchte ein Tool erstellen, mit dem ich eine Webseite aufrufen kann.
Ich möchte mich einloggen und mit HTTPUrlConnection Requests im eingeloggten Bereich hantieren.
Ich sende einen Login mit usernamen und password im HTTP-Request an den Server. ich bekomme die eingeloggte HTML seite in der Response zurück. Jeder darauffolgende Request ist aber nciht mehr mit dem usernamen verbunden.
Wie muss ich die Session halten und in den folgenden Requests, bis zum Logout, mitschicken?
Ich möchte ein Tool erstellen, mit dem ich eine Webseite aufrufen kann.
Ich möchte mich einloggen und mit HTTPUrlConnection Requests im eingeloggten Bereich hantieren.
Ich sende einen Login mit usernamen und password im HTTP-Request an den Server. ich bekomme die eingeloggte HTML seite in der Response zurück. Jeder darauffolgende Request ist aber nciht mehr mit dem usernamen verbunden.
Wie muss ich die Session halten und in den folgenden Requests, bis zum Logout, mitschicken?
Code:
public void sendRequest(Action currentAction)
{
HashMap <String, String> requestProperties = new HashMap<String, String>();
requestProperties.put("Content-Type", currentAction.getRequestheaderValues().get("content-type"));
requestProperties.put("User-Agent", currentAction.getRequestheaderValues().get("user-agent"));
requestProperties.put("Keep-Alive", currentAction.getRequestheaderValues().get("keep-alive"));
requestProperties.put("Accept", currentAction.getRequestheaderValues().get("accept"));
requestProperties.put("Accept-Language", currentAction.getRequestheaderValues().get("accept-language"));
requestProperties.put("Accept-Charset", currentAction.getRequestheaderValues().get("accept-charset"));
requestProperties.put("Accept-Encoding", currentAction.getRequestheaderValues().get("accept-encoding"));
requestProperties.put("Cache-Control", currentAction.getRequestheaderValues().get("cache-control"));
if(cookie != null)
requestProperties.put("Cookie", cookie.getCookie());
try
{
URL url = new URL(urlString);
con = (HttpURLConnection)url.openConnection();
connections(requestProperties, currentAction.getRequestheaderValues().get("method"));
// Sending Request
writeToOutputStream(content);
if(cookie == null)
{
String responseCookie = con.getHeaderField("Set-Cookie");
cookie = new Cookie(responseCookie);
}
con.disconnect();
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (ProtocolException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
private void writeToOutputStream(String content) throws IOException
{
OutputStreamWriter wr = new OutputStreamWriter(con.getOutputStream());
wr.write(content);
wr.flush();
wr.close();
}