Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dreamchach/mystore-backend
https://github.com/dreamchach/mystore-backend
Last synced: 11 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/dreamchach/mystore-backend
- Owner: dreamchach
- License: mit
- Created: 2023-06-15T10:36:40.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-07-11T04:00:20.000Z (over 1 year ago)
- Last Synced: 2024-11-06T23:14:33.461Z (2 months ago)
- Language: JavaScript
- Size: 76.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# 배포 시 사용한 사이트
https://app.cloudtype.io/# 배포 시 생긴 문제
>Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR)
https://okky.kr/questions/455222>MongooseServerSelectionError:
Could not connect to any servers in your MongoDB Atlas cluster.https://japing.tistory.com/entry/Nodejs-Mongoose-MongooseServerSelectionError-Could-not-connect-to-any-servers-in-your-MongoDB-Atlas-cluster
# 레퍼런스한 api 목록
https://github.com/KDT1-FE/KDT3-M4# API
## 1. 공통
### 1. 이미지 업로드
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/products/image
\ -X 'POST'
```#### 요청 데이터
파일 형식으로 전송
```javascript
let formData = new FormData()
const config = {
headers:{'Content-Type' : 'multipart/form-data'}
}formData.append('file', files[0])
const response = instance.post('/products/image', formData, config)
// 프론트엔드에서의
formData.append('aaa', files[0])
// 백엔드에서의
upload.single('aaa')// 'aaa'는 서로 동일해야 함
```## 2. 인증
### 1. 회원가입
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/auth/signup
\ -X 'POST'
```#### 요청 데이터
```javascript
{
// 필수 입력
email : string,
password : string,
displayName : string,// 선택 입력
profileImgBase64? : string
}
```### 2. 로그인
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/auth/login
\ -X 'POST'
```#### 요청 데이터
```javascript
{
// 필수 입력
email : string,
password : string,
}
```### 3. 인증 확인
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/auth/me
\ -X 'GET'
\ -H 'authorization : bearer '
```### 4. 로그아웃
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/auth/logout
\ -X 'GET'
\ -H 'authorization : bearer '
```### 5. 사용자 정보 수정
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/auth/user
\ -X 'PUT'
\ -H 'authorization : bearer '
```#### 요청 데이터
```javascript
{
// 선택 입력
profileImgBase64? : string,
oldPassword? : string,
newPassword? : string
}
```## 3. 제품
### 1. 제품 추가 (관리자)
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/products
\ -X 'POST'
\ -H 'authorization : bearer '
\ -H 'masterkey : true'
```#### 요청 데이터
```javascript
{
// 필수 입력
title : string,
price : number,
description : string,
desc : string,// 선택 입력
tags? : string,
thumbnail? : string,
photo? : string
}
```### 2. 모든 제품 조회 (관리자)
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/products
\ -X 'GET'
```### 3. 제품 수정 (관리자)
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/:productId
\ -X 'PUT'
\ -H 'authorization : bearer '
\ -H 'masterkey : true'
```#### 요청 데이터
```javascript
{
// 선택 입력
title? : string,
price? : number,
description? : string,
desc? : string,
tags? : string,
thumbnail? : string,
photo? : string,
isSoldOut? : string
}
```### 4. 제품 삭제 (관리자)
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/:productId
\ -X 'DELETE'
\ -H 'authorization : bearer '
\ -H 'masterkey : true'
```### 5. 제품 검색
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/search
\ -X 'POST'
```#### 요청 데이터
```javascript
{
// 선택 입력
searchTag? : string,
}
```### 6. 단일 제품 상세 조회
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/:productId
\ -X 'GET'
```### 7. 제품 거래(구매) 신청
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/buy
\ -X 'POST'
\ -H 'authorization : bearer '
```#### 요청 데이터
```javascript
{
email : string,
productId : string,
}
```### 8. 제품 거래(구매) 취소
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/cancel
\ -X 'POST'
\ -H 'authorization : bearer '
```#### 요청 데이터
```javascript
{
detailId : string
}
```### 9. 제품 거래(구매) 확정
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/ok
\ -X 'POST'
\ -H 'authorization : bearer '
```#### 요청 데이터
```javascript
{
detailId : string,
productId : string
}
```### 10. 제품 전체 거래(구매) 내역
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/transactions/details
\ -X 'POST'
\ -H 'authorization : bearer '
```#### 요청 데이터
```javascript
{
email : string
}
```### 11. 단일 제품 상세 거래(구매) 내역
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/transactions/detail
\ -X 'POST'
\ -H 'authorization : bearer '
```#### 요청 데이터
```javascript
{
detailId : string
}
```### 12. 전체 거래(판매) 내역 (관리자)
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/transactions/all
\ -X 'GET'
\ -H 'authorization : bearer '
\ -H 'masterkey : true'
```### 13. 거래(판매) 내역 완료/취소 및 해제 (관리자)
#### 요구사항
```
curl https://port-0-mystore-backend-koh2xlj3ufoqd.sel4.cloudtype.app/api/transactions/:detailId
\ -X 'PUT'
\ -H 'authorization : bearer '
\ -H 'masterkey : true'
```#### 요청 데이터
```javascript
{
isCanceled : boolean,
done : boolean
}
```