Здравствуйте. Разрабатываю мобильное приложение на AIR (будет работать на iOS и Android), которое должно иметь возможность делать публикацию на страницу пользователя.
Для этого использую виджет:
apiok.ru/wiki/pages/viewpage.action?pageId=83034148. На сколько я понял, это в данный момент единственно возможный способ, для выполнения подобной задачи.
Предварительно получил аппрув, отправив письмо на api-support@ok.ru. И получил ответ, что приложение заапрувлено.
Но при отправки простого тестового запроса на публикацию, получаю ошибки.
Так же сверялся с примером использования:
https://github.com/apiok/js_sample_widgets
Далее привожу код формирования строки URL, с ответами сервера.
private const APP_ID:String = '1136958208';
var attachmentJSON:String = '{"media":[{"type":"text","text":"test"}]}';
var returnUrl:String = '
mersibo.ru';
//var secretKey:String = 'D6148C766486E8C1B42E5365';
var secretKey:String = sessionSecretKey;
var signature:String = "st.attachment=" + attachmentJSON + 'st.return=' + returnUrl + secretKey;
var strUlr:String = '
connect.ok.ru/dk?st.cmd=WidgetMediatopicPost'
+ '&st.app=' + APP_ID
+ '&st.attachment=' + encodeURIComponent(attachmentJSON)
+ '&st.signature=' + MD5.hash(signature)
+ '&st.return=' + encodeURIComponent(returnUrl)
+ '&st.session_key=' + sessionSecretKey
Такая строка, с добавленным в конце ключом сессии и/или токеном (как в примере) возвращает: {"type":"error","code":1,"message":"Unknown service error please try again later"}
Если убрать в конце токен и ключ сессии, то ответ будет: {"type":"error","code":104,"message":"Bad signature"} (как-то неправильно составлена подпись, а как правильно тогда не понятно)
Попробовал в подпись поставить вместо ключа сессии секретный ключ приложения (что по идее не правильно), ответ: {"type":"error","code":100,"message":"Widget should only be called from mersibo.ru"} (это значит что подпись правильна, а метод серверный?)
Подскажите пожалуйста, как правильно нужно составить эту строку, подпись и где может быть ошибка.
Клиентская авторизация OAuth происходит по инструкции:
apiok.ru/wiki/pages/viewpage.action?pageId=81822117
(
www.odnoklassniki.ru/oauth/authorize?client_id=113...