Модератор форума: JonMagon  
Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Базовое API на uCoz
Базовое API на uCoz
Модератор форума
Сообщение # 1 | 15:36:48
В марте 2011 в системе uCoz появилась возможность использовать функционал API.

АPI - это бесплатная возможность, её нужно просто активировать в Основных настройках сайта.

Инструкция по включению и использованию данной возможности находится ЗДЕСЬ.


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

ОБНОВЛЕНИЯ

  • [13.05.2011] Добавлена возможность использовать ключ (API key) для базового API.

    Данная возможность позволяет разрешить использование API только для тех, кто знает ключ. Для всех остальных API не будет работать. Включить эту возможность можно в панели управления в разделе “Настройки” → “Общие настройки” → “Использовать API key”. Ключ генерируется автоматически.

    Если вы захотите изменить уже существующий ключ, то отключите и включите заново эту опцию, затем сохраните изменения.

    Использовать API при наличии ключа нужно посредством GET-запроса следующим образом:
    http://SITE_ADDRESS/api/MODULENAME/ANYRELPATH?apikey=APIKEY


leaderru
Сообщений: 1
Репутация: 2

Сообщение # 106 | 21:50:21
Подскажите пожалуйста выводить историю репутации не в ajax окне, а на самой странице пользователя и изменить текст при изменении репы.

ReSLeaR-
Сообщений: 1
Репутация: 2

Сообщение # 107 | 20:55:38
joncofe, Добавьте USER_COUNTRY_ID
sch779
Сообщений: 703
Репутация: 348

Сообщение # 108 | 18:42:53
Вопрос разработчикам API (если, конечно, они читают эту тему!) - почему-бы не расширить функциональность ключа для API-запросов?
В плане - добавить "гостевой" ключ, при указании которого можно было-бы с помощью API-запросов получать материалы, которые по настройке прав недоступны текущему пользователю.

К примеру, хочу организовать хранение некоторых данных с помощью модуля "Форум" - т.е., создаю специальные категории/форумы, которые видны только админу. Добавление данных туда - отдельная тема.
Теперь хочу с помощью API-запросов получать из этих закрытых категорий/форумов нужную информацию.
В данный момент эту инфу может получить только админ!
Если открыть эти категории/форумы всем, то нужно предпринимать специальные меры (с помощью JS) для их скрытия от обычных посетителей сайта!

А, если учесть что на уровне шаблона "Общий вид форума" такой фильтрации невозможно сделать, то остаются только два варианта:
- купить услугу "PHP" и сделать такой фильтр через промежуточные запросы
- тянуть все данные на клиента и уже на месте скрывать специальные категории/форумы

Первый вариант не подходит для некоммерческих сайтов - мало найдется админов-альтруистов, готовых жертвовать кроме своего времени еще и средства!
Второй вариант, во-первых, замедлит работу форума, а во-вторых, в исходном коде браузера все эти "скрытые" данные легко доступны!

Еще вопрос - знатокам API по форуму.
Можно-ли запросить не всю страницу с постами заданной темы (/api/forum/*-*-0-42), а только первый пост из этой темы? Естественно, ID первого поста неизвестен, поэтому нельзя использовать запрос /api/forum/*-*-*-16-*-*.
Спасибо!
Сообщение отредактировал sch779 - Суббота, 27 Авг 2011, 21:14:34
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 109 | 02:12:44
sch779,
Quote (sch779)
Можно-ли запросить не всю страницу с постами заданной темы (/api/forum/*-*-0-42), а только первый пост из этой темы?

А чем не устроил запрос на первую страницу темы? - первое сообщение и будет первым в теме .... Файл лёгкий - парсится моментом ....
/api/forum/8-387-1 - ссылка в тему и есть ссылка на первую страницу ....
...

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
sch779
Сообщений: 703
Репутация: 348

Сообщение # 110 | 03:41:38
Quote (fflesh)
А чем не устроил запрос на первую страницу темы?

С этим проблем нет - как ты правильно заметил, парсится результат API легко.

На счет "легкости" самого файла результатов - зависит от форума. Если на странице выводиться 20-30 сообщений и сами сообщения немаленькие, то такой файл может "потянуть" на десятки килобайт.
А у меня одна из настроек форума выводит индивидуальные иконки для каждой темы форума - сама иконка для темы задается скрытым блоком в первом сообщении темы и, естественно, приходиться в цикле запрашивать список сообщений для каждой темы текущей страницы форума.
Если, к примеру, в форуме десятка два тем и в каждой теме первая страница "весит" порядка 10-20 кило, то получается общий трафик порядка 200-400 кило! И из них больше 95% - ненужный трафик! angry
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 111 | 04:03:45
sch779,
Quote (sch779)
Если, к примеру, в форуме десятка два тем и в каждой теме первая страница "весит" порядка 10-20 кило, то получается общий трафик порядка 200-400 кило! И из них больше 95% - ненужный трафик!

... Да? А как ты смотришь на “очень нужный трафик” и “два десятка” get-запросов только для того чтобы установить иконку? ...
Может лучше изменить настойки? чем лепить такую конструкцию?
...

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
sch779
Сообщений: 703
Репутация: 348

Сообщение # 112 | 15:08:21
Quote (fflesh)
А как ты смотришь на “очень нужный трафик” и “два десятка” get-запросов только для того чтобы установить иконку?

Полностью согласен - не очень мне нравится такой алгоритм! angry
Более того - боюсь, что такое количество запросов не понравится "сторожевой" системе Юкоза! wacko
В данном случае даже не спасает промежуточный php-скрипт - в нем все равно прийдется делать такое-же количество запросов к серверу!

Но - ничего лучшего не придумал! sad
Если есть идеи по поводу вывода персональных иконок темам форума - с удовольствием приму! help

К сожалению, существующие шаблоны форума не предоставляют возможности вмешаться в процесс вывода форумов/тем/записей!
Т.е., приходиться работать с тем, что выводиться на страницу существующим "движком". А в список тем форума выводиться только название темы и ее описание. Сначала рассматривал вариант указания ссылки на иконку в поле описания, но отказался от этого варианта - у большинства тем в моем форуме нужны дополнительные комментарии. К тому-же, прийдется эту ссылку "вырезать" из описания, что-бы на экране она не выводилась - а таких мест, где тема выводиться со своим описанием очень много!
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 113 | 16:45:24
sch779,
Quote (sch779)
Но - ничего лучшего не придумал!

Я так и подумал.
Quote (sch779)
К тому-же, прийдется эту ссылку "вырезать" из описания, что-бы на экране она не выводилась - а таких мест, где тема выводиться со своим описанием очень много!

А зачем вырезать полностью?
А зачем ссылку целиком?
...
Quote (sch779)
Если есть идеи по поводу вывода персональных иконок темам форума - с удовольствием приму!

- Есть идеи, но долго описывать.
Если вкратце - задавать в описании, скриптом проверять, если есть - ставить иконку и урезать (а не целиком вырезать) описание. Всё. Просто до «нимагу».
...

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
Сообщение отредактировал fflesh - Воскресенье, 28 Авг 2011, 16:49:00
sch779
Сообщений: 703
Репутация: 348

Сообщение # 114 | 01:23:20
Quote (fflesh)
задавать в описании, скриптом проверять

Писал-же - отказался от этой идеи по той причине, что прийдется этот скрипт ставить во многие места!
В любом месте, где возможна выдача списка тем, выдается и описание.
Кроме шаблонов - еще в информерах, API!
К тому-же, максимальная длина описания темы достаточно мала (всего 60 символов! кстати, это ограничение задано в html-коде, а каков реальный размер этого поля в базе?) - если будут длинные описания, то даже просто название иконки (без пути к ней) может и не влезть!

Хотя, если в ближайшие дни будут претензии со стороны тех-службы юкоза или появятся жалобы на "тормозную" работу форумов, в которых работает эта система, то прийдется или вообще отказаться от идеи персональных иконок для тем или реализовать через описание. Правда, вариант с описанием мне очень не нравится! wink
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 115 | 02:16:23
sch779,
Quote (sch779)
Писал-же - отказался от этой идеи по той причине, что прийдется этот скрипт ставить во многие места!

? - Это в какие? У форума вообще один шаблон )
Quote (sch779)
Кроме шаблонов - еще в информерах, API!

Ну, это да. Информеры придется поправить. Но все это - копеечные расходы.

Quote (sch779)
К тому-же, максимальная длина описания темы достаточно мала (всего 60 символов! кстати, это ограничение задано в html-коде, а каков реальный размер этого поля в базе?) - если будут длинные описания, то даже просто название иконки (без пути к ней) может и не влезть!

??? Для иконки достаточно три\четыре символа - разделитель и имя файла.
3 символа = $12 == 200 иконок.
5 символа = $1/23 == 7200 иконок.

Quote (sch779)
Хотя, если в ближайшие дни будут претензии со стороны тех-службы юкоза или появятся жалобы на "тормозную" работу

А так, на глаз? не чувствуется? ... Что говорит Фаербаг - запросы? ...

Quote (sch779)
Правда, вариант с описанием мне очень не нравится!

- Есть вариант со стилями - по ID - но очень хлопотно ... Хотя, если подумать, и иконок не более 20-50 - вполне ... (1-3 спрайта ... и файл стилей ... единственно - геморрой добавлять)
- Или ещё, опять же по ID темы - массив формата ID:'ссылка' .... и скрипт. (те же проблемы ... с добавлением)
...

Но, по любому, любой из этих вариантов лучше, чем 25 запросов. Как по скорости выполнения, так и по нагрузке.

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
Сообщение отредактировал fflesh - Понедельник, 29 Авг 2011, 11:43:11
magnum
Сообщений: 14
Репутация: 14
Уровень замечаний:

Сообщение # 116 | 14:50:29
Здравствуйте, какая-нибудь страница отдает в API количество пользователей(зарегистрированных) на сайте (общее кол-во)?

Добавлено (23-Сен-2011, 14:50:29)
---------------------------------------------
Скажи пожалуйста, на странице /api/index/15 отдается список всех пользователей?

Один из лучших сайтов на uCoz: http://mzilla.ru/
PHP скрипт для вашего сайта -> Заказать
Сообщение отредактировал magnum - Пятница, 23 Сен 2011, 14:50:36
Victor
Сообщений: 1141
Репутация: 576

Сообщение # 117 | 15:49:50
Quote (magnum)
какая-нибудь страница отдает в API количество пользователей(зарегистрированных) на сайте (общее кол-во)?
Можете получить эти данные с помощью информера.
Quote (magnum)
Скажи пожалуйста, на странице /api/index/15 отдается список всех пользователей?
Нет, не всех. Для запроса к определённым страницам используйте: /api/index/15-1
A$K
Сообщений: 42
Репутация: -5
Уровень замечаний:

Сообщение # 118 | 00:37:09
Объясните, плиз, как достучаться до API страницы определенного материала, например, модуля blog, если на сайте включен ЧеловекоПонятныйУрл. Известен только ID материала.

В нашей стране сажают за бесовские дрыганья, что уж там говорить о чрезмерно активной жизненной позиции...
magnum
Сообщений: 14
Репутация: 14
Уровень замечаний:

Сообщение # 119 | 12:34:30
По id можно присоединиться к новости, через браузер тебя перенаправит на url где учитывается категория материала и др.
Если через скрипт, то придется принимать куки, переходить скриптом на предлагаемый url и тогда уже ты попадешь на нужную тебе страницу.
В другим модулях это не работает.

Добавлено (24-Окт-2011, 06:17:40)
---------------------------------------------
да, api реализовано ужасно неудобно и непродуманно

Добавлено (04-Ноя-2011, 12:33:45)
---------------------------------------------
Скажите пожалуйста, кто надоумил и в чем смысл на странице /api/index/15 отдавать имена пользователей, но логины - это блин тайна! Логинов на этой странице не узнаешь. Вот например мне нужно по логину определить id пользователя, придется ходить по всем страницам /8-n и записывать их логины.

Добавлено (04-Ноя-2011, 12:34:30)
---------------------------------------------
Администрация, ответьте пожалуйста на этот вопрос.


Один из лучших сайтов на uCoz: http://mzilla.ru/
PHP скрипт для вашего сайта -> Заказать
mcsweb
Сообщений: 24
Репутация: -13

Сообщение # 120 | 10:22:05
Возможно ли мне встроить переменные со страницы https://btc-e.com/api/2/1/ticker средствами API?

---------------*******-------------
Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Базовое API на uCoz
Поиск: