Пример программного решения для электронной коммерции и розничной торговли, демонстрирующий мощь и гибкость MongoDB.
MEANStore использует vagrant для создания полнофункциональной виртуальной среды с работающим MEANStore/MEANMart.
git clone https://github.com/mrlynn/meanstore.git
cd meanstore
vagrant up
На этом этапе приложение должно быть запущено и работать, и к нему можно получить доступ с вашего ноутбука/компьютера, открыв URL-адрес http://localhost:30001.
vagrant ssh # access the vagrant instance
sudo su - # become super user
cd /home/vagrant/meanmart/meanstore # change to project directory
npm run dev # run the application in developer mode
На этом этапе приложение должно быть запущено и работать, и к нему можно получить доступ с вашего ноутбука/компьютера, открыв URL-адрес http://127.0.0.1:30000 в зависимости от конкретных настроек в вашем файле конфигурации .env.hackathon.
git clone https://github.com/mrlynn/meanstore.git
cd meanstore
npm install
# unicode doesn't install nicely first pass - try again
npm install unicode
# install faker to generate data
npm install faker
# Set environment
export MONGODB_URI="mongodb://127.0.0.1:27017/hackathon"
# Generate some data...
node data/fake-refrigerators.js
node data/fake-televisions.js
node data/fake-cameras.js
node data/fake-apparel.js
# Create the categories...
node data/category-seeder.js
# Now run it...
npm run dev
Как только vagrant завершит подготовку, подключитесь к экземпляру по ssh:
vagrant ssh
Вы должны обнаружить, что MongoDB установлен и работает. Вы также должны обнаружить, что создана база данных и набор коллекций с тестовыми данными.
Чтобы использовать любой из включенных API или методов аутентификации OAuth, вам потребуется получить соответствующие учетные данные: идентификатор клиента, секрет клиента, ключ API или имя пользователя и пароль. Вам нужно будет пройти через каждого поставщика, чтобы создать новые учетные данные.
Обновление MEANStore 1.0: я включил фиктивные ключи и пароли для всех примеров API, чтобы вы могли начать работу еще быстрее. Но не забудьте обновить их своими учетными данными , когда будете готовы развернуть приложение.
– Посетите Google Cloud Console. – Нажмите кнопку **Создать проект**. – Введите *Название проекта*, затем нажмите кнопку **Создать**. – Затем нажмите *API и аутентификация* на боковой панели и выберите вкладку *API*. – Нажмите **API Google+** в разделе *API социальных сетей*, затем нажмите **Включить API**. – Далее в разделе *API и аутентификация* на боковой панели нажмите вкладку *Учетные данные*. – Нажмите **Создать новый. Кнопка «Идентификатор клиента**» — выберите *Веб-приложение* и нажмите **Настроить экран согласия** — Заполните необходимые поля, затем нажмите **Сохранить** — В модальном диалоговом окне *Создать идентификатор клиента*: — **Приложение Тип**: Веб-приложение – **Авторизованные источники Javascript**: http://localhost:3000 – **Авторизованный URI перенаправления**: http://localhost:3000/auth/google/callback – Нажмите на кнопке **Создать идентификатор клиента** — скопируйте и вставьте ключи *Идентификатор клиента* и *Секрет клиента* в файл `.env`. Примечание. Когда вы будете готовы к развертыванию в рабочей среде, не забудьте добавить новый URL-адрес в авторизованные источники Javascript и URI авторизованного перенаправления , например http://my-awesome-app.herokuapp.com
и http://my-awesome-app.herokuapp.com/auth/google/callback
соответственно. То же самое касается и других провайдеров.
Примечание. После успешного входа в систему через Facebook пользователь будет перенаправлен обратно на домашнюю страницу с добавленным хешем #_=_
в URL-адресе. Это не ошибка. См. обсуждение переполнения стека, чтобы узнать, как с этим справиться.
MEANStore поставляется с API, который позволяет вам запрашивать базу данных MongoDB и управлять ею. Если вы хотите просмотреть внутренние структуры данных, чтобы узнать, как можно создать каталог продуктов с использованием методологии хранения данных MongoDB на основе документов, отличный способ начать — использовать Postman. С помощью Postman вы можете быстро создавать запросы, сохранять их для дальнейшего использования и анализировать ответы, отправленные API. Postman может значительно сократить время, необходимое для тестирования и разработки API. Postman одинаково хорошо адаптируется как для отдельных разработчиков, небольших команд, так и для крупных организаций.
Чтобы использовать postman, после его установки просто загрузите URL-адрес API в postman. Например, чтобы просмотреть коллекцию продуктов, если вы используете бродячую установку, используйте следующий URL-адрес в postman:
http://localhost:30000/api/products
Это откроет всю коллекцию каталога продуктов.
[
{
"_id": "584aecaaf580422022aea4fb",
"code": "ref1099",
"name": "Generic Plastic Computer Refrigerator",
"title": "Intelligent IVORY Generic Plastic Computer Refrigerator",
"description": "Est enim aut.",
"taxable": true,
"shipable": true,
"price": 73300,
"Product_Group": "Refrigerator",
"category": "Refrigerator",
"imagePath": "/img/samsung-refrigerator.jpg",
"__v": 0,
"salesYearMonth": [],
"salesYTD": [],
"usersBought": [],
"categories": [],
"update": "2016-12-09T17:40:58.033Z",
"created": "2016-12-09T17:40:58.033Z",
"options": [],
"Attributes": [],
"likes": []
},
...
git checkout -b my-new-feature
git commit -am 'Add some feature'
git push origin my-new-feature