我正在使用 Apache HttpClient 生成 Post 请求并提交数据。由于远程应用程序依赖于提交数据的用户的 IP 地址,因此我想发送用户指定 IP 地址的发布请求。
我该如何配置?
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();
}
}
编辑:为避免混淆,
我想在 httprequest 标头中包含自定义 IP 地址,以便最终应用程序知道,此请求 [来自我的应用程序] 来自自定义 IP 地址,而不是来自运行我的应用程序的 IP 地址
假设我的应用程序在 IP 地址为“1.1.1.0”的服务器上运行。现在我的用户正在使用“test”、“test”、“199.199.199.0”执行 loginUser 方法。现在从应用程序到目标 URL 的 HTTP 请求应该是从“199.199.199.0”发送的