Generieren von HttpRequest aus einer bestimmten IP in Java
Ich verwende Apache HttpClient, um eine Post-Anfrage zu erstellen und die Daten zu übermitteln. Da die Remoteanwendung die IP-Adresse des Benutzers weitergibt, der die Daten übermittelt, möchte ich eine Post-Anfrage für die vom Benutzer angegebene IP-Adresse senden.
Wie konfiguriere ich das?
public static void loginUser(String username, String password, String ip) throws Exception{
try {
HttpClient client = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://login.myapp.com/");
// Request parameters and other properties.
List<NameValuePair> params = new ArrayList<NameValuePair>(2);
params.add(new BasicNameValuePair("username",username));
params.add(new BasicNameValuePair("password", password));
httppost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
// Execute and get the response.
HttpResponse response = client.execute(httppost);
HttpEntity entity = response.getEntity();
if (entity != null) {
//etc....
}
} catch (Exception e) {
e.printStackTrace();
}
}
EDIT: Um Verwirrung zu vermeiden,
Ich möchte eine benutzerdefinierte IP-Adresse in die HTTP-Anforderungsheader aufnehmen, damit die Endanwendung dies weiß. Diese Anforderung [von meiner App] stammt von einer benutzerdefinierten IP-Adresse, jedoch nicht von der IP-Adresse, unter der meine Anwendung ausgeführt wird
Angenommen, meine Anwendung läuft auf einem Server mit der IP-Adresse "1.1.1.0". Jetzt führt mein Benutzer die loginUser-Methode mit "test", "test", "199.199.199.0" aus. Jetzt sollte die HTTP-Anforderung von der Anwendung an die Ziel-URL so lauten, wie sie von "199.199.199.0" gesendet wurde.