Notice
Recent Posts
Recent Comments
Link
투케이2K
77. (AndroidStudio/android/java) Volley 라이브러리 사용해 POST 방식으로 요청 및 응답 값 확인 실시 - 쿼리 파람 본문
Android
77. (AndroidStudio/android/java) Volley 라이브러리 사용해 POST 방식으로 요청 및 응답 값 확인 실시 - 쿼리 파람
투케이2K 2021. 3. 3. 10:35/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : AndroidStudio
개발 언어 : java
/* =========================== */
/* =========================== */
[소스 코드]
//======== [build.gradle(Module:app)] ========
implementation 'com.android.volley:volley:1.1.0'
//======== [AndroidManifest.xml] ========
<uses-permission android:name="android.permission.INTERNET"/>
application 내부 : android:usesCleartextTraffic="true"
//======== [java 메소드 호출] ========
//TODO import com.android.volley.Response; 를 상속받아야 합니다
getRequestVolleyPOST("http://jsonplaceholder.typicode.com/posts");
//======== [java 메소드 정의] ========
public void getRequestVolleyPOST(final String url){
//TODO 데이터 Request 객체 생성
RequestQueue queue = Volley.newRequestQueue(this);
//TODO 파라미터값 선언 실시
Map<String, String> params = new HashMap<>(); //TODO {userId=1} 형태
params.put("userId","1");
params.put("id","1");
//TODO 전송 Url 및 Data 파싱 실시
String dataParse = "";
String postUrl = "";
dataParse = String.valueOf(params.toString());
dataParse = dataParse.replaceAll("[{]","");
dataParse = dataParse.replaceAll("[}]","");
dataParse = dataParse.replaceAll("[,]","&");
postUrl = url + "?" + dataParse;
postUrl = postUrl.replaceAll(" ","");
Log.d("---","---");
Log.w("//===========//","================================================");
Log.d("","\n"+"[A_Main > getRequestVolleyPOST() 메소드 : Volley POST 요청 실시]");
Log.d("","\n"+"["+"요청 주소 - "+String.valueOf(url)+"]");
Log.d("","\n"+"["+"전송 값 - "+String.valueOf(params)+"]");
Log.d("","\n"+"["+"전송 형태 - "+String.valueOf(postUrl)+"]");
Log.w("//===========//","================================================");
Log.d("---","---");
//TODO 데이터 Response 객체 생성
StringRequest request = new StringRequest(Request.Method.POST, postUrl,
//TODO 데이터 전송 요청 성공
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d("---","---");
Log.w("//===========//","================================================");
Log.d("","\n"+"[A_Main > getRequestVolleyPOST() 메소드 : Volley POST 요청 응답]");
Log.d("","\n"+"["+"응답 전체 - "+String.valueOf(response.toString())+"]");
Log.w("//===========//","================================================");
Log.d("---","---");
}
},
//TODO 데이터 전송 요청 에러 발생
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.d("---","---");
Log.e("//===========//","================================================");
Log.d("","\n"+"[A_Main > getRequestVolleyPOST() 메소드 : Volley POST 요청 실패]");
Log.d("","\n"+"["+"에러 코드 - "+String.valueOf(error.toString())+"]");
Log.e("//===========//","================================================");
Log.d("---","---");
}
});
request.setShouldCache(false);
queue.add(request);
}
/* =========================== */
[결과 출력]
* =========================== */
반응형
'Android' 카테고리의 다른 글
Comments