Модератор форума: 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


sch779
Сообщений: 703
Репутация: 348

Сообщение # 61 | 01:42:17
В связи с тем, что в uCoz нельзя напрямую работать со своей БД и создавать дополнительные информационные хранилища, приходится использовать для хранения дополнительной информации существующие модули.
Естественно, при этом хочется эту "сырую" информацию скрыть от обычных пользователей.

К примеру, создаем "личное дело" пользователя. Для накопления информации можно использовать форум и писать туда данные с помощью AJAX. При необходимости, достать эту информацию из форума можно с помощью API.
Но! Если не прятать эту информацию от пользователей, то любой сможет ее увидеть в форуме или по прямым линкам на соответствующие темы/сообщения.
Если-же скрыть эти "служебные" форумы от пользователей, то тогда невозможно будет под обычным пользователем с помощью API достать необходимую инфу из этих "скрытых" форумов!
И как быть?! Планируется-ли как-либо (с помощью вышеупомянутых ключей, к примеру) настраивать для обычных пользователей доступ к административным ресурсам сайта ТОЛЬКО через API? Т.е.. в обычном режиме пользователь не имеет доступ к какому-либо административному ресурсу, но через API + соответствующий ключ может прочитать из этого ресурса данные.

Ferro7
Сообщений: 285
Репутация: 227

Сообщение # 62 | 18:36:28
Quote (sch779)
И как быть?! Планируется-ли как-либо (с помощью вышеупомянутых ключей, к примеру) настраивать для обычных пользователей доступ к административным ресурсам сайта ТОЛЬКО через API? Т.е.. в обычном режиме пользователь не имеет доступ к какому-либо административному ресурсу, но через API + соответствующий ключ может прочитать из этого ресурса данные.

Чем не устраивает вариант PHP uCoz + текстовой файл?

Вы полюбили меня. Здесь я. (с)
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 63 | 23:51:17
Quote (sch779)
И как быть?! Планируется-ли как-либо (с помощью вышеупомянутых ключей, к примеру) настраивать для обычных пользователей доступ к административным ресурсам сайта ТОЛЬКО через API? Т.е.. в обычном режиме пользователь не имеет доступ к какому-либо административному ресурсу, но через API + соответствующий ключ может прочитать из этого ресурса данные.

Как я вижу, в настройках возможность включения доступа только по ключу уже появилась. Правда, пока не совсем понятно, куда именно этот ключ надо вставлять.

Потеряшка - поиск потерянных и помощь бездомным животным в Питере
sch779
Сообщений: 703
Репутация: 348

Сообщение # 64 | 03:13:52
Quote (Ferro7)
Чем не устраивает вариант PHP uCoz + текстовой файл?

Хотя-бы тем, что использовать на бесплатном хостинге платные инструменты, ИМХО, является, мягко говоря, странным! wacko
Тем более - использовать эти платные инструменты ТАК бездарно - вместо полноценной БД работать с простым текстовиком! surprised
К тому-же, если я всерьез решусь заводить свою дополнительную БД, то использую PHP uCoz именно для работы с ней.

Не проще-ли перейти на платный хостинг, где предоставляются ВСЕ необходимые инструменты для полноценной работе со своей информацией?!

Мне нравится uCoz своей бесплатностью и довольно богатым бесплатным функционалом CMS.
И если уж появился очередной бесплатный инструмент (API), то хотелось-бы использовать его по полной!

Добавлено (22-Май-2011, 02:48:53)
---------------------------------------------

Quote (YuriT)
Правда, пока не совсем понятно, куда именно этот ключ надо вставлять.

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

Хотя, для моего случая такой метод вполне подойдет! Главное теперь - проверить, сможет-ли обычный гость с этим ключем получить доступ к административным материалам?

Добавлено (22-Май-2011, 03:13:52)
---------------------------------------------
Мдаа...
Попробовал API-запрос с ключем - все равно никто кроме администратора не имеет доступ к административным материалам! Очень жаль! sad

Т.е., ключ в данном случае играет только роль того-же переключателя "Использовать API?", и всего лишь дает возможность получения страницы в виде XML-кода.

Ferro7
Сообщений: 285
Репутация: 227

Сообщение # 65 | 01:21:49
Quote (sch779)
Хотя-бы тем, что использовать на бесплатном хостинге платные инструменты, ИМХО, является, мягко говоря, странным!


Стоит копейки... провайдеру за доступ в интернет вы наверняка платите значительно больше biggrin

Quote (sch779)
Тем более - использовать эти платные инструменты ТАК бездарно - вместо полноценной БД работать с простым текстовиком!


Я сильно сомневаюсь что в вашей задачи потребуются транзакции, триггеры и т.д. )
Обычно простой сериализации массива в текстовой файл может хватить за глаза.

Quote (sch779)
Не проще-ли перейти на платный хостинг, где предоставляются ВСЕ необходимые инструменты для полноценной работе со своей информацией?!


Конечно не проще. Там же нет предустановленной CMS uCoz wink

Quote (sch779)
И если уж появился очередной бесплатный инструмент (API), то хотелось-бы использовать его по полной!


api, как уже упоминали, дополняется. Или ждите, или

Вы полюбили меня. Здесь я. (с)
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 66 | 01:59:47
Ferro7,
Quote (Ferro7)
Quote (sch779)
Не проще-ли перейти на платный хостинг, где предоставляются ВСЕ необходимые инструменты для полноценной работе со своей информацией?!

Конечно не проще. Там же нет предустановленной CMS uCoz

Если человек без проблем разбирается в html\php ему “предустановленная CMS uCoz” на платном хотинге - как собаке пятая нога.
...

Quote (Ferro7)
Quote (sch779)
Тем более - использовать эти платные инструменты ТАК бездарно - вместо полноценной БД работать с простым текстовиком!

Я сильно сомневаюсь что в вашей задачи потребуются транзакции, триггеры и т.д. )
Обычно простой сериализации массива в текстовой файл может хватить за глаза.

Задачи имеют свойство меняться со временем, в сторону усложнения.
Хреново начинать дело без запаса возможностей ...

Quote (Ferro7)
Quote (sch779)
Хотя-бы тем, что использовать на бесплатном хостинге платные инструменты, ИМХО, является, мягко говоря, странным!

Стоит копейки... провайдеру за доступ в интернет вы наверняка платите значительно больше biggrin

Я на курево трачу в разы больше, чем на доступ в инет и на сопутствующие расходы. Речь-то совсем не об этом.
...

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
Сообщение отредактировал fflesh - Вторник, 24 Май 2011, 02:08:34
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 67 | 02:14:31
Quote (fflesh)
Если человек без проблемм разбирается в html\php ему “предустановленной CMS uCoz” - как собаке пятая нога.

Ну, в этом случае такой человек попросту никогда и не появится на данном форуме (ибо незачем), так что к нему все эти рассуждения ровно никак и не относятся.

Потеряшка - поиск потерянных и помощь бездомным животным в Питере
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 68 | 02:54:50
YuriT,
Quote (YuriT)
Ну, в этом случае такой человек попросту никогда и не появится на данном форуме (ибо незачем), ...

Это почему?
Человек существо разностороннее, и вечно ищущее проблемы на свою жо... голову. Факт.
И не забываем о такой вещи как «Хобби» для которой вообще рамок не существует.
Так что “появление на данном форуме” человека, “разбирающегося в html/php” - совсем не редкость.

... Ну а если серьёзно, глянь сам, 50% всех «грамотных решений», написаны именно такими людьми. Разбирающимися в своём деле, которым действительно нечего делать на этом форуме ... Но, по тем или иным причинам, посещающим его ...

Quote (YuriT)
так что к нему все эти рассуждения ровно никак и не относятся.

- точно также как и ваши к моим.
Мы просто обсуждаем одну тему «Базовое API на uCoz».

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

Сообщение # 69 | 02:57:18
Quote (YuriT)
Ну, в этом случае такой человек попросту никогда и не появится на данном форуме (ибо незачем)

Почему-же - я, к примеру, программист с достаточно большим стажем (в основном разработка СУБД) и хорошо знаю html/php/js.
Но я, также как и любой человек - ленив и люблю каждую задачу решать с минимальными затратами! tongue
Если сайт можно сделать красивым и функциональным с помощью бесплатного хостинга с предустановленной CMS - зачем для этого проекта делать лишние навороты типа платного хостинга + PHP + БД + пр. и пр.?!
Ведь все это хозяйство потом еще и поддерживать надо! А с готовым сайтом на CMS типа uCoz справится и обычный пользователь "с головой".
YuriT
Сообщений: 231
Репутация: 701
Уровень замечаний:

Сообщение # 70 | 13:39:19
Quote (fflesh)
Так что “появление на данном форуме” человека, “разбирающегося в html/php” - совсем не редкость.

Не "человека, “разбирающегося в html/php”" а человека, которому "“предустановленной CMS uCoz” - как собаке пятая нога".
Второму человеку здесь делать действительно совершенно нечего. А то, что эти классы "человеков" совпадают - это уже не я заявил tongue

Потеряшка - поиск потерянных и помощь бездомным животным в Питере
DesignBySleepTT
Сообщений: 7
Репутация: 3

Сообщение # 71 | 23:15:37
Люди подскажите появится ли в ближайшие время возможность через API вытаскивать информацию из всех полей которые можно заполнить? Допустим из "страница конкретного материала" в модуле "Каталог файлов" Вытащить информацию таких полей "Тип лицензии", "Операционные системы", и т.д.?

Фильмы, Сериалы, Мультфильмы Онлайн http://filmclub.ucoz.ru/
sch779
Сообщений: 703
Репутация: 348

Сообщение # 72 | 00:27:05
Судя по текущему описанию API - изначально оно было написано для реализации информеров. А формат информеров не предполагает вывод подробной информации. К тому-же, ИМХО, uCoz искусственно ограничивает пользователей в полном доступе к их данным.
Хотя, если разработчики, как обещали, будут серьезно расширять это API, то вполне вероятно в будущем появление отдельной платной услуги, которая будет предполагать специальную версию API с более полным доступом к базе данных сайта.

В общем, поживем - увидим!
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 73 | 00:38:09
sch779,
Quote (sch779)
Судя по текущему описанию API - изначально оно было написано для реализации информеров.

- “Судя по текущему описанию API - изначально оно было написано” - Для чего??? - его ни для чего не удобно использовать.
Данные в json - гораздо эффективнее и удобнее юзать нежели парсить xml/RSS ... Тем более с поправкой на ИЕ....
Имеется в виду JavaScript.
...

Личное мнение.

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

Сообщение # 74 | 01:52:05
Quote (fflesh)
Данные в json - гораздо эффективнее и удобнее юзать нежели парсить xml/RSS

Я писал свое сообщение с точки зрения программиста. И как программист могу сказать, что одно и тоже ядро может выдавать данные в разных форматах!
Т.е., если предположить, что я прав, то для модуля информеров это API возвращает JSON-данные, а для "широких масс" (большинство из которых даже слова такого JSON никогда не сышали) возвращает в виде XML (который, кстати, в отличие от JSON, вполне нормально отображается в браузерах).

Quote (fflesh)
нежели парсить xml/RSS

А зачем, собственно говоря, его самому парсить - jQury с этим прекрасно справляется!
Что и подтверждают примеры из этой темы.

Добавлено (26-Май-2011, 01:52:05)
---------------------------------------------
Прошу прощения, что задаю этот вопрос здесь - честно говоря я не смог найти подходящей темы! sad

Вставляю на страничку видео с youtube - все нормально, есть все кнопки управления, включая кнопку "На весь экран".
Этот-же код вставляю в u-окошко - показывает нормально, НО!
Во-первых, нет выбора видео лучшего качества, как в первом случае (без u-окошка).
Во-вторых, нет кнопки "На весь экран".
Размер u-окошка ставил и на автомат и задавал явно больше, чем окно самого проигрывателя - ведет себя одинаково!
Собственно вопрос - можно-ли в u-окошке получить полноценное окно видео-проигрывателя?

И второй вопрос - можно-ли заставить youtube-проигрыватель на своей страничке автоматически начинать показ ролика?
Ключ play=true не помогает. sad
Сообщение отредактировал sch779 - Четверг, 26 Май 2011, 01:52:22
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 75 | 02:26:16
sch779,
Quote (sch779)
Я писал свое сообщение с точки зрения программиста. И как программист могу сказать, что одно и тоже ядро может выдавать данные в разных форматах!

Понятное дело, во том и вопрос: - зачем выдавать в формате xml/rss ?
...
Quote (sch779)
Т.е., если предположить, что я прав, то для модуля информеров это API возвращает JSON-данные, а для "широких масс" (большинство из которых даже слова такого JSON никогда не сышали) возвращает в виде XML

- Ты знаешь, “широкие массы” знают много «умных» и не очень слов, только пользоваться и применить их ни куда не могут.
Кроссбраузерно распасить xml - задача не для “широких масс” ... “Что и подтверждают примеры из этой темы.” ...
...
Quote (sch779)
который, кстати, в отличие от JSON, вполне нормально отображается в браузерах

Пример кода в студию.
- И вообще, ты понял что написал? Как массив данных, коим и является json, может или не может “нормально отображается в браузерах” вообще?
...

Quote (sch779)
А зачем, собственно говоря, его самому парсить - jQury с этим прекрасно справляется!

... Прочитай выше написанное и вдумайся ... в смысл ..., если найдёшь ...
Quote (YuriT)
if($('member:contains("USER_ISVERIFIEDEMAIL") i4',data).text()!='1')
- пример, как “с этим прекрасно справляется” jQuery ....
...

Quote (sch779)
Что и подтверждают примеры из этой темы.

- я не сказал что не возможно распарсить, я сказал не удобно это делать. и не эффективно.
...

Quote (sch779)
Во-первых, нет выбора видео лучшего качества, как в первом случае (без u-окошка).
Quote (sch779)
Во-вторых, нет кнопки "На весь экран".
Quote (sch779)
Собственно вопрос - можно-ли в u-окошке получить полноценное окно видео-проигрывателя?

Ответ:
Можно.

Quote (sch779)
И второй вопрос - можно-ли заставить youtube-проигрыватель на своей страничке автоматически начинать показ ролика?

Ответ:
Можно.
- За это отвечает параметр «autoplay»



А вообще - почитай ка API и инструменты YouTube - полезно будет ...
...
Прикрепления: 1593534.png(70.2 Kb)

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
Сообщение отредактировал fflesh - Четверг, 26 Май 2011, 05:19:54
Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Базовое API на uCoz
Поиск: