Skip to content

PhiZone/api-anc

Repository files navigation

PhiZone API

Based on ASP.NET Core.

Features

  1. Data Presentation
    • Sorting
    • Pagination
    • Searching
    • Filtering
    • ETag
  2. Data Persistence
    • Inheritance
    • File Digest
  3. Authentication
    • Registration
    • Login
    • Token Renewal
    • Token Disposal
    • Email Confirmation
    • Password Reset
    • Login through Third-party Platforms
    • Two-factor Authentication (Not planned)
    • Phone Number Confirmation (Not planned)
  4. TapTap
    • Login & Account Binding

Configuration

A template for both ./appsettings.Development.json and ./appsettings.Production.json is as follows.

{
  "Secret": "YourSecretHere",
  "ConnectionStrings": {
    "DefaultConnection": "Host=localhost:5432;Username=yourusername;Password=yourpassword;Database=yourdatabase"
  },
  "CertificatePassword": "YourPasswordHere",
  "TapTapSettings": {
    "ClientId": "yourid",
    "ClientToken": "yourtoken",
    "TapApiUrl": "https://openapi.taptap.com",
    "FileStorageUrl": "https://oss.example.com"
  },
  "RabbitMQSettings": {
    "HostName": "localhost",
    "Port": 5672,
    "UserName": "yourusername",
    "Password": "yourpassword"
  },
  "FeishuSettings": {
    "ApiUrl": "https://open.feishu.cn",
    "AppId": "yourappid",
    "AppSecret": "yourappsecret",
    "Cards": [
      "songcard",
      "chartcard",
      "petanswercard"
    ],
    "Chats": [
      "contentreviewal",
      "qualificationreviewal",
      "recruitmentreviewal"
    ]
  },
   "MessengerSettings": {
      "ApiUrl": "https://msgapi.example.com",
      "ClientId": "yourid",
      "ClientSecret": "yoursecret"
   },
   "TapGhostSettings": {
      "ApiUrl": "https://tapapi.example.com",
      "ClientId": "yourid",
      "ClientSecret": "yoursecret"
   },
  "AuthProviders": [
    {
      "Name": "GitHub",
      "ApplicationId": "yourguid",
      "ClientId": "yourid",
      "ClientSecret": "yoursecret",
      "AvatarUrl": "https://res.example.com/github-mark.png",
      "IllustrationUrl": "https://res.example.com/github.png"
    }
  ],
  "RedisConnection": "localhost:6379,password:yourpassword",
  "SeekTuneUrl": "http://localhost:2338", 
  "NatsUrl": "nats://localhost:4222",
  "Proxy": "http://this-is-an-optional-field:1080",
  "AutoMapperLicense": "yourlicensekey"
}

A template for ./Resources/resources.json is as follows.

{
  "ProhibitedWords": [
    "word1",
    "word2",
    "word3"
  ]
}

Data Processing

For details on processing an image on the OSS, see Qiniu Developer Docs.

About

Backend of PhiZone, based on ASP.NET Core.

Topics

Resources

Stars

Watchers

Forks

Contributors 5

Languages