Модератор форума: JonMagon  
Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Новое uAPI (новое API для всех сайтов)
Новое uAPI
Dmitry_DM
Сообщений: 553
Репутация: 113

Сообщение # 1 | 10:43:25
Доступна новая версия PHP модуля для uAPI. Версия 2.4 от 25 октября 2017
Загрузить актуальную версию модуля можно на странице - http://api.ucoz.net/ru/manual/module


18 февраля состоялся релиз нового API для uCoz – подробнее в блоге //blog.ucoz.ru/blog/uapi/2015-02-18-367

uАPI - бесплатный дополнительный функционал для вашего сайта.

uAPI это:

4 метода передачи данных
  • GET
  • POST
  • PUT
  • DELETE


3 формата обмена данными:
  • JSON
  • XML
  • Text Plain


14 модулей:
  • Видео
  • Гостевая книга
  • Доска объявлений
  • Каталог сайтов
  • Каталог файлов
  • Каталог статей
  • Мини-чат
  • Новости сайта
  • Онлайн игры
  • Опросы
  • Пользователи
  • Форум
  • Фотоальбомы
  • FAQ



Мы хотим создать свое сообщество uAPI разработчиков и поэтому для вас 24/7 доступна uAPI Лаборатория, где можно задать абсолютно любой вопрос по разработке, документации, коду, отправить код на разработку и тд


Швабракадабра
Сообщений: 268
Репутация: 77

Сообщение # 106 | 08:09:55
Добрый день.

Сейчас в документации API не описано добавление поста на в тему на форуме. Это сейчас в принципе невозможно или просто не успели описать? Если возможно, но не описали, то подскажите, плз, обязательные параметры, чтобы постить можно было.

Dmitry_DM
Сообщений: 553
Репутация: 113

Сообщение # 107 | 08:43:55
Швабракадабра, POST /uapi/forum/posts?fid=2&tid=1&message=1rfsd
fid – айди форума
tid – айди темы
message – сообщение
include_html - включить HTML теги (по умолчанию вкл)
end2br - заменять перводы строк тегом <BR> (по умолчанию вкл)
smiles_on - включить смайлы (по умолчанию вкл)
signature_on - включить подпись (по умолчанию вкл)
subscribe - уведомления на email при ответах
first_on_top - первое сообщение темы сделать шапкой(показывать на всех страницах)
is_on_top - тема всегда сверху
is_closed - закрытая тема
Швабракадабра
Сообщений: 268
Репутация: 77

Сообщение # 108 | 09:38:51
Dmitry_DM, спасибо большое.

Tovar0550
Сообщений: 22
Репутация: 0

Сообщение # 109 | 11:07:23
В модуле онлайн игр в ответе нет playground_width, если в опубликованном материале не указана ссылка на swf файл. Как быть? У меня в материалах нет ссылки на swf, но поля ширина/высота игровой области используются.Как быть, чтобы получить playground_width?
Разработчики, не игнорьте, уже 3й раз этот вопрос задаю
Dmitry_DM
Сообщений: 553
Репутация: 113

Сообщение # 110 | 14:17:15
Tovar0550, передам разработчику, но логика здесь простая: если нет файла, то и размеры не для чего. Но вас понял, сделаем
tarapuz
Сообщений: 4
Репутация: 0

Сообщение # 111 | 18:46:21
Цитата tarapuz ()
Регистрирую локального пользователя через uAPI, регистрация проходит, но переданные в массиве phone,aol и msn остаются пустые у пользователя! Пример запроса:

$response = $request->post('/users', array( 'user' => 'user',
'password' => '123456',
'email' => 'mail@mail.ru',
'phone' => '89854433332',
'name' => 'контакт',
'city' => 'мой адрес',
'state' => '2',
'icq' => '12345678',
'aol' => '12345678',
'msn' => '12345678',
'yahoo' => '12345678',
'signature' => '12345678' ));

в возвращенном $response тоже отсутствуют эти поля:
{"home_page":"","skype":"","jabber":"","stuff_posts":0,"user":"user","icq":"12345678","load_posts":0,"forum_posts":0,"avatar":"","email_verified":"no","publ_posts":0,"banrate":0,"group":{"name":"Пользователи","id":1},"last_visit":"2017-01-0620:10","state":"2","birthday":"","city":"мой адрес","title":"","dir_posts":0,"full_name":"контакт","com_posts":0,"uid":0,"photo_posts":0,"rank":"","reg_date":"2017-01-06
20:10","gender":{"code":0,"name":"[Не указано]"},"status":"offline","board_posts":0,"email":"mail@mail.ru","video_posts":0,"ip":"92.241.162.74","blog_posts":0,"country":"","signature":"12345678","news_posts":0,"yahoo":"12345678","banned":"no"}

На этот вопрос можно получить ответ? Если в системе действительно недоработка, то когда можно ожидать исправления ошибки?
Dmitry_DM
Сообщений: 553
Репутация: 113

Сообщение # 112 | 18:00:15
tarapuz, интересная ситуация. В документации поправим + добавим в функциональную часть.
aol это на самом деле jabber (нужно использовать jabber)
msn на самом деле skype (нужно использовать skype)

А вот с phone мы видим проблему в вебе. Будем ее править и там же и апи.
tarapuz
Сообщений: 4
Репутация: 0

Сообщение # 113 | 17:27:38
Цитата Dmitry_DM ()
tarapuz, интересная ситуация. В документации поправим + добавим в функциональную часть.aol это на самом деле jabber (нужно использовать jabber)
msn на самом деле skype (нужно использовать skype)

А вот с phone мы видим проблему в вебе. Будем ее править и там же и апи.


Да, со skype и jabber сработало!! Спасибо.
А телефон скоро почините?

Добавлено (04 Фев 2017, 11:12:47)
---------------------------------------------

Цитата tarapuz ()
Цитата Dmitry_DM ()tarapuz, интересная ситуация. В документации поправим + добавим в функциональную часть.aol это на самом деле jabber (нужно использовать jabber)
msn на самом деле skype (нужно использовать skype)

А вот с phone мы видим проблему в вебе. Будем ее править и там же и апи.

Да, со skype и jabber сработало!! Спасибо.
А телефон скоро почините?

Dmitry_DM, 2 недели уже прошло, есть надежда на решение проблемы с "телефоном"?

Добавлено (14 Фев 2017, 17:27:38)
---------------------------------------------

Цитата Dunkel ()
Добрый день! Не работает Post и Put метод для модуля "Пользователи". Get и Delete работают. А вот при попытке добавить пользователя или внести изменения в профиле уже существующего выдает ошибку {"error":{"code":"DUPLICATED_OAUTH_PARAMETER","msg":"Duplicated OAuth Protocol Parameter"}} В описание к этой ошибке, в документации указано:"В подписанном запросе вы передаете параметр 'oauth_version' более одного раза. В подписанном запросе параметр 'oauth_version' должен быть в единочном экземпляре". Но этот параметр не дублируется нигде, более того используется стандартный uapi модуль для ucoza. Возможно ошибка в самом модуле, но скорее всего что-то не так со стороны ucoz при обработке запроса. Тестировал на нескольких сайтах. Везде то же самое.
Dmitry_DM, да, аналогичная ситуация, метод post отрабатывает (поле phone не записывает!!!!), а метод put ругается с 'DUPLICATED_OAUTH_PARAMETER'
PhoEn-X
Сообщений: 42
Репутация: 2

Сообщение # 114 | 00:38:09
Доброго времени суток. Вопросы по uAPI, но не по PHP.
1. В устаревшей документации нет ничего про поле, используемое в редактировании шаблонов в модуле load, с кодом $SCREEN_URL$. Реально ли это поле отредактировать запросом по uAPI?
2. Предусмотрен ли порядок получения комментариев? asc, desc? При запросе с одним из таких параметров ничего не меняется, при том очень неудобно, когда при запросе, например, 999 страницы, возвращается страница 1, если всего страниц меньше 999. То есть никаким образом не получить свежие комментарии (а они лежат на последней странице) без предварительного запроса для получения общего количества страниц.
3. На сайтах предусмотрено комментирование через соц. сети, при этом ни ссылок на аватары, ни ссылок на страницы пользователей не получить. Тоже печальная ситуация.
4. Заметил, что ввели поле original_message, но для чата такого поля не нашёл, зато после добавления оно вроде как в ответе сервера фигурирует biggrin
5. Планируется ли реализация модуля личных сообщений?
6. С кем можно связаться для вопроса по реализации загрузки файлов? По документации oAuth 1.0a при загрузке файлов используется маленько другой метод работы с параметрами, при этом
  • Все дополнительные параметры (без префикса oauth_) в генерации подписи не участвуют
  • Все дополнительные параметры (без префикса oauth_) в генерации заголовка Authorization не участвуют
  • Заголовок Content-Type: application/x-www-form-urlencoded заменяется на Content-Type: multipart/form-data; boundary=nofvr9f4cui242huf (примерно)

Вроде все правила соблюдены, но сервер каждый раз отвечает ошибкой о неправильной подписи запроса.

Сообщение отредактировал PhoEn-X - Понедельник, 20 Фев 2017, 00:41:18
Darth_LegiON
Сообщений: 41
Репутация: 0

Сообщение # 115 | 15:30:59
tarapuz, присоединяюсь, то же самое. Не могу выполнить скрипт из-за DUPLICATED_OAUTH_PARAMETER!

Добавлено (01 Апр 2017, 15:30:59)
---------------------------------------------
tarapuz, помогло следующее:
строчку 249 в uAPIModule заменяете на: $forcurlpost = $this->params + $data;
он OAUTH Signature два раза повторял - в посте и в гете, вот API и взбрыкнул.

Только у меня другая беда: при обработке пользователей форумная подпись им из BB перекодируется в HTML. Причем я ее вообще не трогал, менял только поле jabber.
Сообщение отредактировал Darth_LegiON - Суббота, 01 Апр 2017, 15:32:30
Galina94930
Сообщений: 7
Репутация: 0

Сообщение # 116 | 00:54:07
Подскажите, каковы сейчас лимиты UAPI? На сайте написано 10000 запросов в час. Ссылка на ограничения модулей отображает абсолютные ограничения, а не ограничения публикаций через UAPI
.
Просто раньше (год назад) было 400 публикаций в день, а тут 10000 в час видимо. Странно...
ru77ba
Сообщений: 3
Репутация: 0

Сообщение # 117 | 23:18:19
при добавлении статьи (через API), текст добавляется, но все символы в html тегах заменяются на коды - типа <font>

Добавлено (18 Апр 2017, 23:16:46)
---------------------------------------------
< ;font> ;

Добавлено (18 Апр 2017, 23:18:19)
---------------------------------------------
& l t ;font& g t ;

Likbezz_Flesh
Сообщений: 282
Репутация: 47

Сообщение # 118 | 14:33:34
Цитата ru77ba ()
при добавлении статьи (через API), текст добавляется, но все символы в html тегах заменяются на коды

Попробуйте поменяйте обратно
Код
string htmlspecialchars_decode ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 ] )

- перед записью.
Подозреваю, что преобразование происходит при передачи с формы в скрипт, а не со скрипта в базу.

Сообщение отредактировал Likbezz_Flesh - Среда, 19 Апр 2017, 14:36:01
ru77ba
Сообщений: 3
Репутация: 0

Сообщение # 119 | 00:08:44
Цитата Likbezz_Flesh ()
Попробуйте поменяйте обратно
string htmlspecialchars_decode ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 ] )
1

- перед записью.
Подозреваю, что преобразование происходит при передачи с формы в скрипт, а не со скрипта в базу.


Думаете не пробовал? sad не помогает

вот ответ при добавлении, посылается все правильно а пишется ... гдето баг в самом сервере.. при очередном обновлении какаято затычка осталась sad
"original_message":"<h1>Oll atikle</h1><br>Pri<b>vet</b>"
"message":"& lt;h1& gt;Oll atikle& lt;/h1& gt;& lt;br& gt;Pri& lt;b& gt;vet& lt;/b& gt;"

Добавлено (20 Апр 2017, 00:08:44)
---------------------------------------------
P.s. акаунт довольно старый, гдето месяц назад все работало sad

Likbezz_Flesh
Сообщений: 282
Репутация: 47

Сообщение # 120 | 02:43:35
Цитата ru77ba ()
гдето месяц назад все работало

значит косяк на стороне api ..

Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Новое uAPI (новое API для всех сайтов)
Поиск: