food web app
1.0.0
該存儲庫包含一個實現JWT身份驗證的ASP.NET核心WebAPI應用程序,該應用程序是一個.NET MAUI管理應用程序,用於管理受保護的WebAPI。
repository
|__src
| |__Foody -> web api project
| |__client -> maui project
| |__.gitignore
|__.gitignore
|__ReadME.md
該項目可以在本地或代碼空間運行。
某些要求和工作負載要安裝:
打開命令提示符(Windows)或終端(MAC),然後輸入克隆存儲庫:
git clone https://github.com/coderBane/food-web-app.git
通過單擊“代碼下拉菜單”並選擇代碼空間,在代碼空間中打開存儲庫
在運行項目之前,我們需要先設置一些內容。
dotnet ef dotnet tool install -- global dotnet - ef創建一個redis容器實例
docker run --name redis-cache -p 6379:6379 -d redis
創建一個容器實例
docker run --name postgresql -e POSTGRES_PASSWORD=<yourpassword> -p 5432:5432 -d postgres
運行PSQL
docker exec -it postgresql psql -U postgres
首先,我們需要創建一個新角色。該角色將具有登錄和數據庫創建特權。
CREATE ROLE devuser WITH LOGIN CREATEDB PASSWORD '<yourpassword>';
切換到新用戶
c postgres devuser
創建數據庫
CREATE DATABASE foody;
NOTE: You can run the command l to view all existing databases
在運行項目之前,我們需要為Web API配置一些內容。打開foody.webapi.csproj文件,並刪除用戶交易屬性。
打開新的終端或命令提示符,然後將目錄更改為foody.webapi文件夾。
運行命令:
dotnet user-secrets init
使用此網站隨機生成一個隨機字符串。
創建一個新的文件“ S.JSON”並用以下內容填充它
{
"JwtConfig": {
"Secret": "<generatedstring>",
"ExpiryTimeFrame": "00:01:00"
},
"WatchDog": {
"Username": "<yourusername>",
"Password": "<yourpassword>"
},
"Redis": "localhost",
"Postgres": "Server=localhost:5432;Database=foody;User Id=devuser;Password=<devuserpassword>;Integrated Security=true;Pooling=true;",
"UserPW": "<yourpassword>"
}
設置用戶秘密
cat ./s.json | dotnet user-secrets set
NOTE: You can delete the s.json file
我們需要在數據庫中創建表。
dotnet ef --startup-project ../Foody.WebApi database update
我們現在可以運行項目
不招搖而發射
dotnet run
用Swagger UI啟動
dotnet watch