드레:
코딩 뿌시기
드레:
전체 방문자
오늘
어제
  • 분류 전체보기 (268)
    • Python (74)
      • Python 기초 (42)
      • Numpy (8)
      • Pandas (22)
    • Machine Learning (31)
      • Machine Learning (1)
      • Deep Learning (27)
    • AWS (22)
      • RDS (3)
      • EC2 (9)
      • Lambda (8)
      • S3 (2)
    • MySQL (24)
    • Git (8)
    • Streamlit (12)
    • REST API (22)
    • Java (24)
    • Android (36)
    • Debugging (15)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • EC2
  • flask
  • aws s3
  • GET
  • github
  • Python
  • volley
  • pandas
  • JWT
  • Ann
  • Java
  • Lambda
  • 네이버 API
  • 깃이그노어
  • Streamlit
  • API
  • 안드로이드 스튜디오
  • AWS Lambda
  • fine tuning
  • serverless
  • Retrofit2
  • 서버리스
  • tensorflow
  • AWS
  • Callback
  • CNN
  • rest api
  • 액션바
  • Transfer Learning
  • 딥러닝

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
드레:

코딩 뿌시기

Android

Android Studio - Volley 라이브러리 Body와 Header에 데이터 담아서 Request 하는 법

2023. 2. 8. 19:07

1. Body에 데이터 전달하는 방법

  • Body에 보낼 JSONObject 객체를 만들고,
  • put 메소드로 객체에 key와 value를 넣어준다.
  • JsonObjectRequest 생성자 3번째 파라미터에 JSONObject  객체를 전달한다.
// body에 데이터를 넣는다.
JSONObject body = new JSONObject();
try {
    body.put("source", source);
    body.put("target", target);
    body.put("text", text);
} catch (JSONException e) {
    return;
}

// request 생성자 3번째 파라미터에 body를 전달한다.
RequestQueue queue = Volley.newRequestQueue(MainActivity.this);
JsonObjectRequest request = new JsonObjectRequest(
        Request.Method.POST,
        URL,
        body,
        new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
               // 정상적으로 응답 받았을 때 실행할 코드
            }
        },
        new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                // 응답에 에러가 발생했을 때 실행할 코드
            }
        }
);

queue.add(request);

 

 

 

2. Header에 데이터 전달하는 방법

  • JsonObjectRequest 생성자가 끝나는 ; 바로 앞에 중괄호 { } 를 연다.
  • 그 자리에 getHeaders 메소드를 오버라이딩 하고 헤더에 데이터를 넣어주고 리턴한다.
RequestQueue queue = Volley.newRequestQueue(MainActivity.this);
JsonObjectRequest request = new JsonObjectRequest(
        Request.Method.POST,
        URL,
        body,
        new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {

            }
        },
        new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                
            }
        }
){
    @Override
    public Map<String, String> getHeaders() throws AuthFailureError {
        Map<String, String> headers = new HashMap<>();
        headers.put("X-Naver-Client-Id", Config.NAVER_CLIENT_ID);
        headers.put("X-Naver-Client-Secret", Config.NAVER_CLIENT_SECRET);
        return headers;
    }
};

queue.add(request);

'Android' 카테고리의 다른 글

Android Studio - Retrofit2를 이용해 API 서버에 요청하기(GET) + RecyclerVeiw 에 표시  (0) 2023.02.13
Android Studio - Retrofit2를 이용해 API 서버에 요청하기(POST)  (1) 2023.02.09
Android Studio - RecyclerView 페이징 처리 (마지막까지 스크롤 됐을 때, 이벤트 처리)  (0) 2023.02.08
Android Studio - Intent 활용 (주소록, 웹, SMS, Email 열기)  (0) 2023.02.07
Android Studio - 이미지 처리를 위한 Glide 라이브러리 사용법  (0) 2023.02.07
    'Android' 카테고리의 다른 글
    • Android Studio - Retrofit2를 이용해 API 서버에 요청하기(GET) + RecyclerVeiw 에 표시
    • Android Studio - Retrofit2를 이용해 API 서버에 요청하기(POST)
    • Android Studio - RecyclerView 페이징 처리 (마지막까지 스크롤 됐을 때, 이벤트 처리)
    • Android Studio - Intent 활용 (주소록, 웹, SMS, Email 열기)
    드레:
    드레:

    티스토리툴바