Pull to refresh

Comments 25

А что за вызов?
Какие параметры?
Можете выложить сюда переписку с поддержкой?
Ваш топик мне напомнил баш:
— Ваша программа не работает
— А что именно не работает?
— Ничего не работает!

Вы бы, действительно, привели пример кода. Так, глядишь, совместными усилиями и выяснили бы, в чем причина. А без этого топик, как бы ни о чем.
Что Вы имеете в виду?! Приведите пример кода, передаваемых в топик параметров и переписку с автором топика! )
Для меня новость, что у них API появился, спасибо :)
Друзья, сейчас в комментариях все приведу. Переписку, конечно, до того момента, как перестали отвечать…

Я же не мог предположить, что тут все такие отзывчивые )
На одной планете живем, так что зачем ругаться и игнорировать друг друга.
обычно в топике приводят хоть какие-то данные, из того что вы привели, могу сказать что:

[/irony]
Друзья, что касается кода:

Request:
api.odnoklassniki.ru/fb.do

{
'access_token': 'fetikKDgmaa2W3rH6p6viv-OA015mLKey08',
'application_key': 'CBADIFABABABABABA',
'sig': '261af9572ed830c522eaf3900a2b051c',
'method': 'photos.getUploadUrl',
'format': 'JSON'
}

Result:
{«error_code»:104,«error_data»:null,«error_msg»:«PARAM_SIGNATURE: Invalid signature 261af9572ed830c522eaf3900a2b051c, calculated by string application_key=CBADIFABABABABABAformat=JSONmethodhotos.getUploadUrl********SECRET KEY*******»}
Это запрос на который была ошибка.
access_token — естественно уже не живой
Боюсь сказать банальную вещь, но тут прямым текстом написано: у вас подпись не сошлась с тем, что получилось вовремя проверки.
Думаю, вы правильно боялись )
Эта социальная сеть ещё существует? я думал Одноклассники там же где и connect.ua — остались только самые избранные из избранных пользователей
Ну а теперь переписка до того момента, как все заглохло (после было еще несколько однообразных запросов в сторону поддержки:

Evgeny Rumyantsev added a comment — 02/Mar/11 11:57 AM — edited
При запросе возникла проблема с подписью.

Resultl:{«error_code»:104,«error_data»:null,«error_msg»:«PARAM_SIGNATURE: Invalid signature 261af9572ed830c522eaf3900a2b051c, calculated by string application_key=CBADIFABABABABABAformat=JSONmethod=photos.getUploadUrl********SECRET KEY*******»}

В нашем приложении секретный ключ: ********OUR SECRET KEY*******

md5('application_key=CBADIFABABABABABAformat=JSONmethod=photos.getUploadUrl********OUR SECRET KEY*******') = 261af9572ed830c522eaf3900a2b051c

Но Ваше API данную сигнатуру не принимает. В чем может быть проблема?

Evgeny Rumyantsev added a comment — 03/Mar/11 11:55 AM
Не могли бы Вы сообщить, это у нас ошибка или проблема на Вашей стороне?

Evgeny Rumyantsev added a comment — 03/Mar/11 12:00 PM
Shortname Application: PostOK

Aleksandr Hristoforov added a comment — 03/Mar/11 6:22 PM
Подпись вроде бы правильная. Дайте пожалуста весь запрос со всеми параметрами.

Evgeny Rumyantsev added a comment — 03/Mar/11 6:55 PM
Request:
api.odnoklassniki.ru/fb.do

{
'access_token': 'fetikKDgmaa2W3rH6p6viv-OA015mLKey08',
'application_key': 'CBADIFABABABABABA',
'sig': '261af9572ed830c522eaf3900a2b051c',
'method': 'photos.getUploadUrl',
'format': 'JSON'
}

Result:
{«error_code»:104,«error_data»:null,«error_msg»:«PARAM_SIGNATURE: Invalid signature 261af9572ed830c522eaf3900a2b051c, calculated by string application_key=CBADIFABABABABABAformat=JSONmethod=photos.getUploadUrl********SECRET KEY*******»}

Evgeny Rumyantsev added a comment — 09/Mar/11 2:52 PM
Добрый день, вы не могли бы сообщить статус моей заявки? Что неверно передается в запросе и на нашей ли стороне ошибка?
Я может не совсем понимаю, но в API (только что заглянул) secret key передается только при логине. Ответом является структура в которой есть session_key, который потом и передается при каждой операции. В документации для photos.getUploadUrl сказано, что
Request: /photos/getUploadUrl?application_key=[Application Key]&sig=[Signature]&session_key=[Session Key]

То есть тут как-то все по-другому (не как у вас). Это документация на Rest API.
То есть по их логике, схема работы такова:
  1. логинитесь — получаете session_key
  2. с использованием session_key совершаете требуемую операцию

Если я что-то не так понял, то извините — с API Одноклассников я не работал — просто попробовал посмотреть в документацию.
Евгений, я постараюсь прояснить в чем дело.
1. Вы были одним из первых, кто начал пользоватся OAuth. И в документации явно написано, что это beta версия. Поэтому вполне возможно были проблемы в тот момент.
2. Как вы понимаете, разработчиков не мало, и решение подобных проблем занимает приличное время. Что бы ответить на ваш вопрос «в чем проблема» нам нужно повторить все возможные ошибки при подсчете подписи и найти именно вашу.
3. Мы стараемся по мере возможности быстро реагировать на проблемы. Что бы доказать, я приведу выжимку первой части переписки, которую вы забыли опубликовать:

Evgeny Rumyantsev added a comment - 28/Feb/11 6:10 PM
Возникла проблема с OAuth
................

Edgars Strods added a comment - 28/Feb/11 6:15 PM
redirect_uri, а не redirect_url

Evgeny Rumyantsev added a comment - 28/Feb/11 11:09 PM
У меня возникло несколько вопросов. Мы успешно получаем access_token и refresh_token
.............

Evgeny Rumyantsev added a comment - 28/Feb/11 11:56 PM
Второй вопрос немного поменялся.
.....

Aleksandr Kuznetsov added a comment - 01/Mar/11 4:04 PM
access_token в формировании подписи при вызове метода не участвует. access_token при вызове методов API заменяет session_key
...........


По-моему вам оперативно отчвечали 2 человека. На последний вопрос действительно вам лично не ответили — наша вина.

4. Что касается конкретно вашей проблемы, в документации жирным выделено:
sig = md5( request_params_composed_string+ md5(access_token + application_secret_key) )
Вы же подписываете так:
sig = md5( request_params_composed_string+ md5(application_secret_key) )
Коллеги, добрый день. Спасибо, что написали.

По поводу первой части переписки — я явно написал об этом в своем посте:
«С горем пополам, с помощью технической поддержки социальной сети (за что им можно было бы сказать спасибо), мы дописали приложение..». Это так, вы действительно помогли разобраться.

Но приведенная вами первая часть переписки как-то должна объяснить трехнедельное молчание поддержки после 3-го марта?

Что касается пункта 4:
Вы правы, в документации, как мы сейчас увидели, с 11 марта жирным написано именно то, что Вы привели в своем посте, но вы перестали нам отвечать гораздо раньше, и на тот момент документация имела следующий вид: dev.odnoklassniki.ru/wiki/pages/viewpage.action?pageId=13992060
… где, к сожалению, о специфике подписи не было ни слова.

Тем не менее, спасибо за ответ. Кажется у нас появилась работка =)

PS: Ну и справедливости ради добавлю: хорошо, что у одноклассников, как и у прочих современных соц сетей, есть OAuth 2.0 протокол в отличие, например, от ВКонтакте ;)
Мы тоже отказались от поддержки продукта на одноклассниках и переключились на другие сети.
Кстати, ваша проблема не единична, у них очень много проблем с ихней собственной JS либой(язык не поворачивается называть это SDK) — в свое время полностью ее переписывал, чтобы хоть что-то работало. Если вы считаете сигнатуру с помощью нее — посмотрите на метод создания сигнатуры, он в некоторых случаях работает неправильно.
Спасибо за совет. Проверим…
В некоторых запросах в подсчете сигнатуры участвует не все параметры. Да, с документацией у них туго, но методом тыка можно найти какие конкретно параметры участвуют, а какие нет.
Ну, вообще говоря, ждем официальных комментариев в топе.
Было бы интересно узнать, куда и как они собираются двигаться, и, действительно, стоит ли в обозримом будущем предполагать поддержку этой соцсети в своих проектах.
Выше ответили официальные лица. Хабр читают, стараются помочь. Всё хорошо :)
UFO just landed and posted this here
Да, друзья. Это обсуждение привело к достаточно быстрому решению проблемы, за что благодарю представителей социальной сети Одноклассники. Отношу то, что произошло к разряду недоразумений. Возможно ребята просто забыли уведомить, понадеявшись, что мы сами будем мониторить изменения API.

Сегодня, около 0 часов в Одноклассниках была опубликована первая фотография и подпись к ней, пришедшие в виде MMS сообщения.
С топиком отлично гармонирует подпись в вашем профиле — «О себе: Мизантроп» :)
Sign up to leave a comment.