Volley 프레임워크에서 쿠키 및 쿠키 요청 링크 가져오기
7337 단어 android
이를 위해 Volley를 선택했습니다.
Volley 프레임이란 무엇일까요?그것은 작은 데이터, 빈번한 네트워크 조작, 그리고 그림을 불러오는 데 적합하지만 단점이 있다. 빅데이터 양의 네트워크 조작, 예를 들어 파일을 다운로드하는 등 Volley의 표현은 매우 나쁘다.
오늘 저는 여러분께volley 프레임워크를 가지고 쿠키를 가져오고 쿠키를 가져오는 요청 강좌를 드리겠습니다.
android 사이드 아날로그 브라우저 접근 방식:
1. 프레임워크를 통해 첫 번째 로그인에 성공하고 돌아온 쿠키 2를 가져오고, SharedPreferences로 쿠키 3를 저장하고, 요청할 때마다 저장된 쿠키를 요청 머리에 놓는다.
다음은 제가 여러분께 주요 코드를 드리겠습니다.
1. 쿠키를 저장하는 방법:
private void saveSettingNote(String s,String saveData){//
SharedPreferences.Editor note = getSharedPreferences(Config.ShareTo,MODE_PRIVATE).edit();
note.putString(s, saveData);
note.commit();
}
2. 레코드에서 쿠키를 가져오는 방법:
private String getSettingNote(String s){//
SharedPreferences read = getSharedPreferences(Config.ShareTo, MODE_PRIVATE);
return read.getString(s, "");
}
3. 첫 번째 쿠키 요청:
RequestQueue mQueue = Volley.newRequestQueue(this);
StringRequest stringRequest = new StringRequest(Request.Method.POST, Config.url+"/port/login_port.ashx", new Response.Listener<String>() {
@Override
public void onResponse(String s) {
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> map = new HashMap<String, String>();
return map;
}
@Override
protected Response<String> parseNetworkResponse(NetworkResponse response) {
try {
Map<String, String> responseHeaders = response.headers;
String rawCookies = responseHeaders.get("Set-Cookie");
saveSettingNote(Config.Cookie,rawCookies);// Cookie
Log.i("px",rawCookies+"
");
String dataString = new String(response.data, "UTF-8");
Log.i("px",dataString);
return Response.success(dataString, HttpHeaderParser.parseCacheHeaders(response));
} catch (UnsupportedEncodingException e) {
return Response.error(new ParseError(e));
}
}
};
mQueue.add(stringRequest);
4. 쿠키 요청
RequestQueue mQueue = Volley.newRequestQueue(this);
StringRequest stringRequest = new StringRequest(Request.Method.GET, Config.url+"/port/get_category_port.ashx", new Response.Listener() {
@Override
public void onResponse(String s) {
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
}
}) {
@Override
public Map getHeaders() throws AuthFailureError {
HashMap localHashMap = new HashMap();
localHashMap.put("Cookie", getSettingNote(Config.Cookie));// Cookie
return localHashMap;
}
};
mQueue.add(stringRequest);
됐어, 이 정도야.도움이 됐으면 좋겠어요.잘못이 있으면 지적해 주셔서 대단히 감사합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.