Этот проект представляет собой Web API, разработанный на ASP.NET Core для управления отзывами пользователей о товарах. API предоставляет возможность создавать, удалять и получать отзывы. В качестве базы данных используется Microsoft SQL Server.
Данное Web API используется в ASP.NET MVC приложении по доставке еды. Ознакомиться с ним можно здесь.
Основные возможности API:
- Получение отзыва по ID
- Получение списка отзывов по ID товара
- Создание нового отзыва
- Удаление отзыва по ID
- Удаление отзывов по ID пользователя
Для развёртывания проекта убедитесь, что у вас установлен и запущен docker-engine:
git clone https://github.com/GeorgeD615/ReviewWebApi.git
cd ReviewWebApi
Запустите сервисы с помощью команды:
docker-compose up -d
Это развернет два контейнера:
mssqlserver— контейнер с SQL Serverreviewsapi— контейнер с вашим API
Приложение будет доступно по адресу http://localhost:5001.
Докер образ приложения размещён здесь.
curl -X 'GET' \
'http://localhost:5001/Review/GetByProductId?productId=3fa85f64-5717-4562-b3fc-2c963f66afa6' \
-H 'accept: text/plain'
Пример ответа:
[
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"productId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"text": "Отличный товар",
"grade": 5,
"date": "2024-09-19"
}
]
curl -X 'GET' \
'http://localhost:5001/Review/GetById?id=3fa85f64-5717-4562-b3fc-2c963f66afa6' \
-H 'accept: text/plain'
Пример ответа:
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"productId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"text": "Отличный товар",
"grade": 5,
"date": "2024-09-19"
}
curl -X 'POST' \
'http://localhost:5001/Review/Create' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"productId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"text": "Отличный товар",
"grade": 5
}'
curl -X 'DELETE' \
'http://localhost:5001/Review/DeleteById?id=3fa85f64-5717-4562-b3fc-2c963f66afa6' \
-H 'accept: */*'
curl -X 'DELETE' \
'http://localhost:5001/Review/DeleteByUserId?userId=3fa85f64-5717-4562-b3fc-2c963f66afa6' \
-H 'accept: */*'
Для тестирования и просмотра документации API используется Swagger.
После запуска приложения Swagger будет доступен по адресу:
http://localhost:5001/swagger/index.html