![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#3
|
|||
|
|||
![]() В общем дело такое, что код на пыхе не работает. Нашел на одном форуме что раньше он работал а сейчас нет. Специально повесил Апач и проверил.
Первые 2 обращения к postData думаю верны. Пробовал в них менять значения и происходит ошибка. Да и authToken сервер присылает. Судя по всему третий запрос не правильно формируется. Расковырял .apk оригинального приложения. Вот код формирования третьего запроса Код:
private String encodeBasicAuth(String paramString1, String paramString2) { return Base64Utils.encode(paramString1 + ":" + paramString2); } public TokenResponse authenticate(String paramString) { try { URIBuilder localURIBuilder = new URIBuilder().base(String.format("https://%s/token", new Object[] { this.endpointProvider.get() })); paramString = new URIBuilder().param("grant_type", "authorization_code").param("code", paramString).param("redirect_uri", (String)this.redirectUrlProvider.get()).build(); Object localObject = encodeBasicAuth((String)this.clientIdProvider.get(), (String)this.clientSecretProvider.get()); localObject = ac.b("Authorization", "Basic " + (String)localObject); paramString = new HttpDriver.RequestBody("application/x-www-form-urlencoded; charset=utf-8", paramString.getBytes()); paramString = this.http.postAsJson(TokenResponse.class, localURIBuilder.build(), (Map)localObject, paramString); if (paramString.isSuccessful()) { return (TokenResponse)paramString.getContent(); } Log.severe("Failed authorization attempt, " + paramString); throw new NetworkException(paramString); } catch (IOException paramString) { Log.severe("Error attempting to refresh, err=" + paramString); throw new NetworkException(598, paramString.getMessage()); } } endpointProvider = auth.riotgames.com redirectUrlProvider = http://localhost/oauth2-callback clientIdProvider = leagueconnect clientSecretProvider = amVYw7iK_qSaGUNqxRvzgs16EMgdEUdu1mDVdMNJDC4 paramString который передается в функцию, это authToken полученный после второго запроса Тут я совсем не силен. Если кто знает подскажите как эта функция формирует запрос. Все что я смог это Код:
function encodeBasicAuth(s1,s2:string):string; begin Result:=EncodeBase64(s1+':'+s2); end; Последний раз редактировалось Shaft, 28.08.2017 в 08:57. |