Я пытаюсь получить мои контакты из Windows Live, используя RestEasy
После успешной аутентификации моего пользователя я позвонил на https://livecontacts.services.live.com/users/@L@/rest/livecontacts
Установить заголовок аутентификации, добавить мой идентификатор и мои токены
Если я выполняю вызов из командной строки с помощью cUrl, я получаю ожидаемый результат, но в моем веб-приложении я получаю обратно бессмысленный ответ
, например
...? {? [?? e ^ 7E? ...
Текущий класс интерфейса
public interface WindowsLiveAPI {
@GET
@Path(value="/@L@{liveId}/rest/livecontacts")
Response getContacts(@PathParam("liveId") @Encoded String liveId, @HeaderParam("Authorization") String delegatedToken);
}
Тест ThrowAway:
ResteasyProviderFactory.getInstance().addMessageBodyReader(DefaultTextPlain.class);
RegisterBuiltin.register(ResteasyProviderFactory.getInstance());
WindowsLiveAPI client = ProxyFactory.create(WindowsLiveAPI.class, "https://livecontacts.services.live.com");
ClientResponse<LiveContacts> response = (ClientResponse) client.getContacts(LIVE_ID, DELEGATED_TOKEN);
System.out.println(response.getStatus()); //Produces 200 (401 after token expires)
System.out.println(response.getEntity(String.class)); //produces gibberish
Кто-нибудь знает, как разобрать ответ