AngularJS and Yii2 RestApi

Всё что касается построения API
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

AngularJS and Yii2 RestApi

Сообщение yiijeka »

Наработки github - https://github.com/githubjeka/angular-yii2

Пока просто - пробую, тестирую, изучаю...

DEMO - http://angularyii2.github.io/
Последний раз редактировалось yiijeka 2014.03.28, 18:49, всего редактировалось 1 раз.
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AngularJS and Yii2 RestApi

Сообщение zelenin »

yiijeka писал(а):Наработки github - https://github.com/githubjeka/angular-yii2

Пока просто - пробую, тестирую, изучаю...
несерьезно. давай демку хотя бы. не лазить же по всему коду, чтобы понять, что там "пробуешь, изучаешь".
Аватара пользователя
vova07
Сообщения: 1004
Зарегистрирован: 2012.11.29, 14:52
Откуда: Chisinau, Moldova

Re: AngularJS and Yii2 RestApi

Сообщение vova07 »

Поддерживаю идею с демкой. Сам скоро должен буду такую связь делать, так что будет интересно посмотреть.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

А чё там смотреть, вы блог что ли не видели ? Тем более там ещё всё сырое...
Демку и локально можно запустить, скачал установил, посмотрел, задал вопросы. :)

Не всё сразу, rest yii2 с миру по нитки постигается. Демку онлайн сделаю, как только...так сразу.

Кстати кто-нить yii2 на heroku тестил?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AngularJS and Yii2 RestApi

Сообщение zelenin »

yiijeka писал(а):А чё там смотреть, вы блог что ли не видели ?
а ты что-то про блог написал в первом сообщении?
yiijeka писал(а):Демку и локально можно запустить, скачал установил, посмотрел, задал вопросы. :)
так про все что угодно можно сказать.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

:) Ах , это обычный демо блог на angularJS, с запросами к Yii2Rest...

Папки: (две, остальное эхо войны)
app - это обычный html + js - запущу на github.io
rest - это yii2 настроены под RestApi - запущу где-нибудь )

Пока реализовано аутентификация и index. view постов, форма create только создана. Второй день только делаю, так что не возлагайте пока больших надежд.
Тему создал для обсуждения и может уже кто что-нибудь подобное делал - найти родственную душу )
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Нужна помощь:
1.Как в github.io настроить как в апаче? html5mode

Код: Выделить всё

 RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !index
    RewriteCond %{REQUEST_URI} !.*\.(css|js|html|png)
    RewriteRule (.*) index.html [L] 
Тут лежит демка http://angularyii2.github.io/

2.Не могу настроить авторизацию, локально всё работает. А тут когда верный пароль-логин вводишь уходит

Код: Выделить всё

Request Method:OPTIONS
Status Code:422 Data Validation Failed.
Хотя должно уйти POST и прийти

Код: Выделить всё

Access-Control-Allow-Headers: Content-Type
Access-Control-Allow-Methods: GET
Access-Control-Allow-Origin: http://angularyii2.github.io
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Content-Type: text/html
Date: Fri, 28 Mar 2014 11:20:28 GMT
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
Server: Apache
Set-Cookie: PHPSESSID=6q7hb5t4h0jq8ecm13e1v3gfs3; path=/; HttpOnly
Vary: Accept-Encoding,User-Agent
X-Powered-By: PHP/5.5.9
Content-Length: 84
Connection: keep-alive
и ответ просто строкой:

Код: Выделить всё

JDJ5JDEwJExLRHNBZnh4TER5VTB0aTdSZmF5VC5vRy81YTVOWFpra2c5L0FkVmJhVHIwRS9WdGpKamUuOg== 
UPD: Вторая решена: была связана с https://developer.mozilla.org/en-US/doc ... ntrol_CORS
Первая тоже решена - хаком https://coderwall.com/p/kfomwa
Аватара пользователя
jilizart
Сообщения: 82
Зарегистрирован: 2010.04.22, 18:56
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение jilizart »

В коде ничего интересного пока что. Было бы интересно посмотреть на директивы\модули специфичные для yii, скажем валидация
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Валидация сейчас всунута в дерективу "тостер" - всплывающие сообщения. Ошибки форм - это обычный json объект c ошибками, обрабатывать её можно как угодно - пилить однотипные CHTM::, только на angular мне не интересно. Пока по приоритетам у меня собрать скелет...
Аватара пользователя
MetaDriver
Сообщения: 43
Зарегистрирован: 2014.04.21, 20:53
Откуда: Казань

Re: AngularJS and Yii2 RestApi

Сообщение MetaDriver »

yiijeka, как дела с проектом ?
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Хорошо :)
Планы есть, найти бы время.
Хочу тестами покрыть rest. Попробовать ngMessages прикрутить c валидацией. Версию 2 api поднять, прикрутить клиент...
fgdev
Сообщения: 4
Зарегистрирован: 2014.09.22, 11:35

Re: AngularJS and Yii2 RestApi

Сообщение fgdev »

yiijeka писал(а):Нужна помощь:
1.Как в github.io настроить как в апаче? html5mode

Код: Выделить всё

 RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !index
    RewriteCond %{REQUEST_URI} !.*\.(css|js|html|png)
    RewriteRule (.*) index.html [L] 
А для Nginx как сделать? Почему index.html в корне а не index.php? Нельзя сделать чтобы функциональность yii была в плане разбиения на вьюшки и тд?
При прямом запросе выкидвается 404 оишбка. Конфиг стандартный из док-ции.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

C Nginx пока не удалось запуститься, вернее, под nginx rest сервер - CORS никак не могу победить в связке php-fpm + nginx. А для клиента всё равно, что там. Это обычный html...
index.html - потому что это клиент, а клиент про php никакой не знает, он полностью написан на js + html + css.
Что такое функциональность в плане вьюшек? Вы в своём вопросе смешали настройки клиента и сервера. Я не знаю как вам ответить. Переформулируйтесь :)

Вот настройка сервера - https://github.com/githubjeka/yii2-rest ... on-on-yii2
Вот настройка клиента (вернее просто описание) Он должен работать простым копированием папки..- https://github.com/AngularYii2/angulary ... ndamentals
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Хотя на nginx тоже удалось запуститься. Не удавалось потому, что для php 5.6.0 для "Content-Type:application/json;charset=UTF-8" ловил вот ошибку "Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead."
fgdev
Сообщения: 4
Зарегистрирован: 2014.09.22, 11:35

Re: AngularJS and Yii2 RestApi

Сообщение fgdev »

Спасибо!
Запустил на nginx - все запросы редиректом на index.html, а для API по другому конфигу через поддомен - все запросы на index.php, в нем уже указал add_header 'Access-Control-Allow-Origin' '*';
Я хотел чтобы через index.php все проходило, парсилось и выдавалась бы страница в ввиде html. Там в layout скрипты подключаются.
Впервые делаю на anjularJs, теперь кажется осознал как нужно делать.
Буду разбираться в вашем коде, есть на что посмотреть в практическом плане.

Есть еще задача, хранить все роуты в БД. Есть варианты как сделать? У меня идея пока, такая что до объявления модуля запросить данные, вот в каком ввиде только не понимаю.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Хранить роуты в БД для кого? У сервера? Можно настроить https://github.com/yiisoft/yii2/blob/ma ... .md#links- пока с этим не разбирался... Можно думаю.

Завтра комментарии к постам добавлю и роуты чуть подрефакторил на стороне клиента... Есть сторонний https://github.com/mgonto/restangular для работы с REST, но я его пока не трогал. Хотя кажется нужно его брать, так как мой велосипед обрастает не нужными костылями ...

Демо пока в ауте, проблемы на сервере - переезжает...
fgdev
Сообщения: 4
Зарегистрирован: 2014.09.22, 11:35

Re: AngularJS and Yii2 RestApi

Сообщение fgdev »

Заказчик хочет управлять роутами, как в cms. Например, чтобы раздел организации открывался site.com/org/123 вместо site.com/firm/123 когда захотят.
https://github.com/yiisoft/yii2/blob/ma ... .md#links- - не очень понял для чего это
https://github.com/mgonto/restangular - спс посмотрю
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Управление через rest надо? Лучше это делать на стороне сервера "в папке" backend и делать это для фронтенда, но не для rest, т.к. клиент нужно переписывать каждый раз тогда, либо реализовывать HATEOAS
fgdev
Сообщения: 4
Зарегистрирован: 2014.09.22, 11:35

Re: AngularJS and Yii2 RestApi

Сообщение fgdev »

управление в админке, не через рест. Админка классическая
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: AngularJS and Yii2 RestApi

Сообщение yiijeka »

Задайте этот вопрос тогда в "Общие вопросы yii2", т.к. он не относится к теме. Мусолили уже его много раз.
Ответить