호출 인터페이스 - Android

  • 릴리스 버전: Zurich
  • 업데이트 날짜 2025년 07월 31일
  • 소요 시간: 2분
  • 호출 인터페이스는 처리를 위해 준비된 요청을 나타냅니다.

    가능한 처리 옵션은 다음과 같습니다.
    • cancel
    • 실행

    호출 개체는 두 번 처리할 수 없습니다.

    표 1. 속성
    이름 유형 설명
    요청 요청 이 호출을 시작한 원래 요청입니다.

    호출 - cancel()

    가능한 경우 연결된 호출을 취소합니다(최선의 노력).

    표 2. 매개변수
    이름 유형 설명
    없음
    표 3. 반환
    유형 설명
    없음

    다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.

    private var inFlightDataRequestCall: Call<*>? = null 
    fun cancelTransfer() = inFlightDataRequestCall?.cancel() 

    호출 - enqueue(onSuccess: Consumer<Response<T>>, onError: consumer<NowDataError>)

    시스템\스레드를 사용하여 이 요청을 실행할 수 있게 되는 즉시 요청이 실행되도록 예약합니다.

    표 4. 매개변수
    이름 유형 설명
    온성공 소비자<응답<T>> 호출이 성공한 경우 실행할 콜백입니다. 본문이 매개 변수로 지정된 데이터 형식으로 구문 분석된 HTTP 응답입니다 T .
    주:
    소비자는 개체의 비동기 사용을 위한 OOB Java 유형입니다. 이 경우 호출은 제네릭을 사용하여 Response<T 형식을 반환합니다>여기서 T 는 개체 형식입니다.
    온 에러 Consumer<NowDataError> 호출이 실패할 경우 실행할 콜백입니다.

    NowDataError

    표 5. 반환
    유형 설명
    없음

    다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.

    fun makeGraphQLRequest(query: String) { 
      val call = graphQLService.graphQLRequest(query) 
      call.enqueue( 
        { response -> handleResponse(response) }, 
        { nowDataError -> handleError(nowDataError) } 
      ) 
    } 

    호출 - execute()

    요청을 즉시 호출합니다. 응답이 처리되거나 오류가 발생할 때까지 차단합니다.

    표 6. 매개변수
    이름 유형 설명
    없음
    표 7. 반환
    유형 설명
    응답<T> 매개변수에 정의된 형식의 응답 데이터입니다 T .

    다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.

    val response = apiService.data(NowAPIService.Endpoint( 
      relativePath = CASES_API, 
      requestMethod = HttpMethod.GET, 
      requireAuth = true) 
    ).execute()