Я пытаюсь использовать Twitter API для твитов с использованием токена доступа. Когда я использую API для публикации статуса типа «Привет, ребята», это удается, и я вижу твит на своей временной шкале, но когда я публикую «Привет, ребята :)», я получаю следующий ответ:
{errors=[{code=32, message=Could not authenticate you.}]}
Вот успешно выполненный запрос (отправка «привет, ребята»):
client.target("https://api.twitter.com/1.1/statuses/update.json")
.queryParam("status", "hey%20guys")
.request()
.post(javax.ws.rs.client.Entity.text("sdfsdf"))
.readEntity(Object.class);
Вот запрос, который не работает (отправка «привет, ребята :)»):
client.target("https://api.twitter.com/1.1/statuses/update.json")
.queryParam("status", "hey%20guys%20%3A)")
.request()
.post(javax.ws.rs.client.Entity.text("sdfsdf"))
.readEntity(Object.class);
Для кодирования текста я использовал http://meyerweb.com/eric/tools/dencoder/
Для отправки запросов с использованием API я использую javax.ws.rs.client.Client.
Я также пытался найти какие-либо ссылки в документации Twitter API по этой проблеме. но не нашел ничего связанного. Их API содержит пример для публикации, но я также могу опубликовать его.