Notice
Recent Posts
Recent Comments
Link
투케이2K
70. (AndroidStudio/android/java) AsyncHttpClient 라이브러리 (비동기 네트워크) POST 방식으로 요청 및 응답 값 확인 실시 - 쿼리 파람 본문
Android
70. (AndroidStudio/android/java) AsyncHttpClient 라이브러리 (비동기 네트워크) POST 방식으로 요청 및 응답 값 확인 실시 - 쿼리 파람
투케이2K 2021. 2. 27. 10:13/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : AndroidStudio
개발 언어 : java
/* =========================== */
/* =========================== */
[소스 코드]
//======== [build.gradle(Module:app)] ========
implementation 'com.loopj.android:android-async-http:1.4.9'
//======== [AndroidManifest.xml] ========
<uses-permission android:name="android.permission.INTERNET"/>
application 내부 : android:usesCleartextTraffic="true"
//======== [java 메소드 호출] ========
getRequestHttpPOST("http://jsonplaceholder.typicode.com/posts");
//======== [java 메소드 정의] ========
public void getRequestHttpPOST(String url) {
try {
//TODO ==== AsyncHttpClient 객체 정의 ====
AsyncHttpClient client = new AsyncHttpClient();
RequestParams params = new RequestParams(); //TODO userId=1 형태
Map<String, Object> params = new HashMap<>(); //TODO {userId=1} 형태
//TODO ==== 파라미터 전송값 정의 ====
params.put("userId", "1");
params.put("id", "1");
Log.d("---","---");
Log.w("//===========//","================================================");
Log.d("","\n"+"[A_Http > getRequestHttpPOST() 메소드 : HTTP 통신 수행 POST 방식 요청 실시]");
Log.d("","\n"+"["+"요청 주소 - "+String.valueOf(url)+"]");
Log.d("","\n"+"["+"전송 값 - "+String.valueOf(params)+"]");
Log.d("","\n"+"["+"전송 형태 - "+String.valueOf(url+"?"+params)+"]");
Log.w("//===========//","================================================");
Log.d("---","---");
//TODO ==== [서버에 요청] ====
//client.post(A_Http.this, url, params, new JsonHttpResponseHandler() { //TODO 첫번째 타입
client.post(A_Http.this, url, params, new AsyncHttpResponseHandler() { //TODO 두번째 타입
//TODO ==== [웹요청 시작] ====
@Override
public void onStart() {
}
//TODO ==== [웹요청 성공] ====
@Override
//public void onSuccess(int statusCode, Header[] headers, JSONObject json_data) { //TODO 첫번째 타입
public void onSuccess(int statusCode, Header[] headers, byte[] response) { //TODO 두번째 타입
//String responseData = String.valueOf(json_data.toString());
String responseData = String.valueOf(new String(response));
Log.d("---","---");
Log.w("//===========//","================================================");
Log.d("","\n"+"[A_Http > getRequestHttpPOST() 메소드 : HTTP 통신 수행 POST 방식 요청 확인]");
Log.d("","\n"+"["+"응답 전체 - "+String.valueOf(responseData)+"]");
Log.w("//===========//","================================================");
Log.d("---","---");
}
//TODO ==== [웹요청 실패] ====
@Override
//public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) { //TODO 첫번째 타입
public void onFailure(int statusCode, Header[] headers, byte[] errorResponse, Throwable throwable) { //TODO 두번째 타입
//String responseError = String.valueOf(responseString.toString());
String responseError = String.valueOf(new String(errorResponse));
Log.d("---","---");
Log.e("//===========//","================================================");
Log.d("","\n"+"[A_Http > getRequestHttpPOST() 메소드 : HTTP 통신 수행 POST 방식 요청 실패]");
Log.d("","\n"+"["+"에러코드 - "+String.valueOf(statusCode + "/" + responseError +"]"));
Log.e("//===========//","================================================");
Log.d("---","---");
}
});
}
catch (Exception e){
e.printStackTrace();
}
}
/* =========================== */
[결과 출력]
/* =========================== */
반응형
'Android' 카테고리의 다른 글
Comments