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
이 시점에서 애플리케이션은 실행 중이어야 하며 .env.hackathon 구성 파일의 특정 설정에 따라 URL http://127.0.0.1:30000을 열어 노트북/데스크톱에서 액세스할 수 있습니다.
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 인증 방법을 사용하려면 클라이언트 ID, 클라이언트 비밀번호, API 키 또는 사용자 이름 및 비밀번호와 같은 적절한 자격 증명을 얻어야 합니다. 새 자격 증명을 생성하려면 각 공급자를 거쳐야 합니다.
MEANStore 1.0 업데이트: 더욱 빠르게 시작하고 실행할 수 있도록 모든 API 예제에 더미 키와 비밀번호를 포함했습니다. 하지만 앱을 배포할 준비가 되면 자격 증명 으로 업데이트하는 것을 잊지 마세요.
- Google Cloud Console을 방문하세요 - **프로젝트 생성** 버튼을 클릭하세요. - *프로젝트 이름*을 입력한 다음 **만들기** 버튼을 클릭하세요. - 그런 다음 사이드바에서 *API 및 인증*을 클릭하고 *API* 탭을 선택하세요. - *소셜 API*에서 **Google+ API**를 클릭한 후 **API 활성화**를 클릭합니다. - 그런 다음 사이드바의 *API 및 인증*에서 *자격 증명* 탭을 클릭합니다. - **새 클라이언트 ID 만들기를 클릭합니다. ** 버튼 - *웹 애플리케이션*을 선택하고 클릭 **동의 화면 구성** - 필수 필드를 입력한 후 **저장**을 클릭합니다. - *클라이언트 ID 생성* 모달 대화 상자에서: - **애플리케이션 유형**: 웹 애플리케이션 - **승인된 Javascript 원본* *: http://localhost:3000 - **승인된 리디렉션 URI**: http://localhost:3000/auth/google/callback - **클라이언트 ID 만들기** 버튼 클릭 - *클라이언트 ID* 복사하여 붙여넣기 및 *클라이언트 비밀* 키를 `.env`에 넣습니다. 참고: 프로덕션에 배포할 준비가 되면 승인된 Javascript 원본 및 승인된 리디렉션 URI (예: http://my-awesome-app.herokuapp.com
및 http://my-awesome-app.herokuapp.com/auth/google/callback
에 새 URL을 추가하는 것을 잊지 마십시오. http://my-awesome-app.herokuapp.com/auth/google/callback
각각. 다른 제공업체도 마찬가지다.
참고: Facebook으로 성공적으로 로그인하면 사용자는 URL에 해시 #_=_
가 추가된 홈 페이지로 다시 리디렉션됩니다. 버그가 아닙니다 . 이를 처리하는 방법은 이 스택 오버플로 토론을 참조하세요.
MEANStore에는 MongoDB 데이터베이스를 쿼리하고 관리할 수 있는 API가 포함되어 있습니다. 내부 데이터 구조를 검토하여 MongoDB의 문서 기반 데이터 저장 방법을 사용하여 제품 카탈로그를 구축하는 방법을 알아보려면 Postman을 사용하는 것이 가장 좋습니다. Postman을 사용하면 요청을 신속하게 구성하고 나중에 사용할 수 있도록 저장하고 API에서 보낸 응답을 분석할 수 있습니다. Postman을 사용하면 API 테스트 및 개발에 필요한 시간을 획기적으로 줄일 수 있습니다. Postman은 개별 개발자, 소규모 팀 또는 대규모 조직에 똑같이 잘 적응합니다.
Postman을 활용하려면 일단 설치한 후 API의 URL을 Postman에 로드하기만 하면 됩니다. 예를 들어 vagrant 기반 설치를 사용하는 경우 제품 컬렉션을 검토하려면 postman에서 다음 URL을 사용합니다.
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