2016-09-08 2 views
0

У меня возникли проблемы с получением 401 несанкционированного ответа с сервера, я делаю вызов «GET» из рубина на rails api, маркер oauth находится в заголовке, подобном этому.Ruby on Rails api с android

urlConnection = (HttpURLConnection) url.openConnection(); 
      OAuth = "bearer " + Base64.encodeToString(userpass.getBytes(), Base64.NO_WRAP); 
      Log.e("auth", oAuth_token); 
      urlConnection.setRequestMethod("GET"); 
      urlConnection.setRequestProperty("Authorization", OAuth); 
      urlConnection.setRequestProperty("Content-Type", "application/json"); 
      urlConnection.setRequestProperty("Accept", "application/json"); 
      urlConnection.connect(); 

Userpass - это настоящий токен.

Это работает в почтальоном, а также на прошивкой, но андроид получает 401

ответ

0

Податель маркеров спецификации Использование (RFC 6750) немного сбивает с толку. Вам не нужно базовое кодирование маркера доступа перед использованием. Чтобы быть конкретным, ваш код должен быть просто так:

OAuth = "Bearer " + userpass; 

См this discussion где спрашивающий признался, что имел такое же замешательство, как ваша.