HttpClient oturumundan nasıl çıkış yapılır?HttpClient oturumundan çıkış
HttpClient client = new DefaultHttpClient();
client= httpRequest.loginToHexgen("mayank", "hexgen");
burada
httpRequest
loginToHexgen
yöntemi kullanılırsa sınıftır:
aşağıdaki gibi Apache HttpClient
public HttpClient loginToHexgen(String username, String password) {
HttpClient client = new DefaultHttpClient();
// send post url to login to hexgen
HttpPost post = new HttpPost("http://localhost:8080/j_spring_security_check");
try {
// set the user name and password
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("j_username", username));
nameValuePairs.add(new BasicNameValuePair("j_password", password));
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = client.execute(post);
HttpEntity entity = response.getEntity();
if (entity != null) {
post.abort();
}
} catch (IOException e) {
e.printStackTrace();
}
return client;
}
kullanarak uygulamaya giriş yapmak için aşağıdaki kodu kullanabilirsiniz.
Farklı kullanıcı adı ve parola ile birden çok kullanıcı ile sisteme giriş yapmak isterim.
Örneğin aynı oturumda olduğu gibi, bir kullanıcıyı kapatmak ve diğer kullanıcılarla giriş yapmak istiyorum.
+1 yanıt için farklı bir kullanıcı ile farklı parola göndermeyi denedim, ancak benim için sürpriz olmadı. ben girintili olarak çalıştı. Çaba için teşekkürler. –
"loginToHexgen" işlevinizde aşağıdaki koda sahip olduğunuz sorun: "HttpClient client = new DefaultHttpClient();'. Yeni bir kullanıcı için cookieStore'un oluşturulması eşittir. Notlar: 1. Kimliği doğrulanmış bir kullanıcı adına URL'ye erişmek isterseniz, aynı HttpClient örneğini kullanmanız gerekir (aksi takdirde istek cooikies olmadan olur). 2. Sunucunuzu kontrol edebilir ve her oturum açmanın yeni bir oturum oluşturulduğunu göreceksiniz. – Michael