#android #api #rest #retrofit2
#Android #API #остальное #модернизация 2
Вопрос:
В своем приложении я использую вызовы Rest api для отправки запроса на сервер, который возвращает json в качестве ответа, теперь я хочу преобразовать этот запрос с помощью дооснащения без внесения каких-либо изменений на стороне сервера.Ниже приведен код запроса моего клиента.
public Listlt;StaffDepartmentsgt; getAcademicTeachersList(int classId, int academicId, String dateToday, String authtoken, Context applicationContext, String schoolUrl) { HttpHeaders headers = new HttpHeaders(); headers.set("Authorization", "bearer " authtoken); MultiValueMaplt;String, Stringgt; map = new LinkedMultiValueMap(); map.add("classId", String.valueOf(classId)); map.add("academicId", String.valueOf(academicId)); map.add("dateToday", dateToday); ResponseEntitylt;Stringgt; restRes = this.restTemplate.exchange(schoolUrl "protected/users/getAcademicTeachersList", HttpMethod.POST, new HttpEntity(map, headers), String.class, new Object[0]); if (restRes.getStatusCode() == HttpStatus.OK) { AppBackupCache.checkToken = ItemTouchHelper.Callback.DEFAULT_DRAG_ANIMATION_DURATION; String resBody = (String) restRes.getBody(); Type listType = new TypeTokenlt;Listlt;StaffDepartmentsgt;gt;() {}.getType(); Listlt;StaffDepartmentsgt; allActPgmMap; allActPgmMap = (List) this.gson.fromJson(resBody, listType); return allActPgmMap; } else if (restRes.getStatusCode() == HttpStatus.UNAUTHORIZED) { AppBackupCache.checkToken = 401; return null; } else { AppBackupCache.checkToken = 402; return null; } }
Комментарии:
1. У Retrofit есть довольно обширная документация и образцы. Может быть, взглянем на них?
2. «хотите преобразовать этот запрос с помощью модернизации без внесения каких-либо изменений на стороне сервера» что вы имеете в виду под этим? зачем вам изменять запрос, если сервер не нуждается в каких-либо изменениях?