통화 인터페이스 - Android
호출 인터페이스는 처리를 위해 준비된 요청을 나타냅니다.
가능한 처리 옵션은 다음과 같습니다.
- cancel
- 큐
- 실행
- 맵
호출 개체는 두 번 처리할 수 없습니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 요청 | 요청 | 이 호출을 시작한 원래 요청입니다. |
호출 - cancel()
가능한 경우 연결된 호출을 취소합니다(최선의 노력).
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 없음 |
다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.
private var inFlightDataRequestCall: Call<*>? = null
fun cancelTransfer() = inFlightDataRequestCall?.cancel()
호출 - enqueue(onSuccess: Consumer<Response<T>>, onError: Consumer<NowDataError>)
시스템\스레드를 사용하여 이 요청을 실행할 수 있게 되는 즉시 요청을 실행하도록 예약합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| onSuccess (온 성공) | 소비자<응답<T>> | 호출이 성공하면 실행할 콜백입니다. 본문이 매개 변수로 지정된 데이터 형식으로 구문 분석된 HTTP 응답입니다 T . 주: 소비자는 객체의 비동기 소비를 위한 OOB Java 유형입니다. 이 경우 호출은 generic을 사용하여 Response< T 형식을 반환합니다> 여기서 T 는 개체 형식입니다. |
| Onerror | Consumer<NowDataError> | 호출이 실패할 경우 실행할 콜백입니다. NowDataError |
| 유형 | 설명 |
|---|---|
| 없음 |
다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.
fun makeGraphQLRequest(query: String) {
val call = graphQLService.graphQLRequest(query)
call.enqueue(
{ response -> handleResponse(response) },
{ nowDataError -> handleError(nowDataError) }
)
}
호출 - execute()
요청을 즉시 호출합니다. 응답이 처리되거나 오류가 발생할 때까지 차단됩니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 응답<T> | 매개변수에 정의된 형식의 응답 데이터입니다 T . |
다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.
val response = apiService.data(NowAPIService.Endpoint(
relativePath = CASES_API,
requestMethod = HttpMethod.GET,
requireAuth = true)
).execute()