ログイン アクティビティがあり、ユーザーをモバイル アプリにログインさせるために、Web サイトのポスト リクエストを作成する必要があります。Web サイトで投稿リクエストを作成するには、パラメーターとして csrf Cookie が必要です。つまり、最初に URL から Cookie を取得し、csrf 値を使用して投稿リクエストを作成する必要があります。
これが私のコードです:
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("http://192.168.178.163:8080/login/");
try {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("username", "xxx"));
nameValuePairs.add(new BasicNameValuePair("password", "yyy"));
//csrfmiddlewaretoken
String res = null;
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = client.execute(post);
res = response.toString();
res = res.replaceAll("\\s+","");
BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
String line = "";
while ((line = rd.readLine()) != null) {
Log.i("line", line);
//System.out.println(line);
if (line.startsWith("csrftoken=")) {
String key = line.substring(5);
Log.i("key", key);
}
}
}
catch (IOException e) {
txt_Error.setText(e.toString());
}
それを行う方法はありますか?私はすでに CookieSyncManager について読みましたが、まったく理解できませんでした...アイデアやコードサンプルは適切です