Используя RestEasy с Windows Live Service, как удалить список возвращенных контактов? - PullRequest
0 голосов
/ 18 июня 2010

Я пытаюсь получить мои контакты из 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

Кто-нибудь знает, как разобрать ответ

1 Ответ

0 голосов
/ 23 июня 2010

Вы можете попробовать метод @Produces (MediaType.APPLICATION_XML) [если это XML].

...