mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-23 02:35:49 +08:00
feat: add go backend API docs
Signed-off-by: Kininaru <shiftregister233@outlook.com>
This commit is contained in:
parent
5c49693bc0
commit
3a13b8e73c
@ -6,4 +6,5 @@ copyrequestbody = true
|
|||||||
dataSourceName = root:123@tcp(localhost:3306)/
|
dataSourceName = root:123@tcp(localhost:3306)/
|
||||||
dbName = casdoor
|
dbName = casdoor
|
||||||
AuthState = "casdoor"
|
AuthState = "casdoor"
|
||||||
UseProxy = false
|
UseProxy = false
|
||||||
|
EnableDocs = true
|
@ -58,7 +58,7 @@ type Response struct {
|
|||||||
// @Description register a new user
|
// @Description register a new user
|
||||||
// @Param username formData string true "The username to register"
|
// @Param username formData string true "The username to register"
|
||||||
// @Param password formData string true "The password"
|
// @Param password formData string true "The password"
|
||||||
// @Success 200 {object} controllers.api_controller.Response The Response object
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
// @router /register [post]
|
// @router /register [post]
|
||||||
func (c *ApiController) Register() {
|
func (c *ApiController) Register() {
|
||||||
var resp Response
|
var resp Response
|
||||||
@ -104,7 +104,7 @@ func (c *ApiController) Register() {
|
|||||||
|
|
||||||
// @Title Logout
|
// @Title Logout
|
||||||
// @Description logout the current user
|
// @Description logout the current user
|
||||||
// @Success 200 {object} controllers.api_controller.Response The Response object
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
// @router /logout [post]
|
// @router /logout [post]
|
||||||
func (c *ApiController) Logout() {
|
func (c *ApiController) Logout() {
|
||||||
var resp Response
|
var resp Response
|
||||||
@ -120,6 +120,10 @@ func (c *ApiController) Logout() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetAccount
|
||||||
|
// @Description get the details of the current account
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /get-account [get]
|
||||||
func (c *ApiController) GetAccount() {
|
func (c *ApiController) GetAccount() {
|
||||||
var resp Response
|
var resp Response
|
||||||
|
|
||||||
@ -138,6 +142,12 @@ func (c *ApiController) GetAccount() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title UploadAvatar
|
||||||
|
// @Description register a new user
|
||||||
|
// @Param avatarfile formData string true "The base64 encode of avatarfile"
|
||||||
|
// @Param password formData string true "The password"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /upload-avatar [post]
|
||||||
func (c *ApiController) UploadAvatar() {
|
func (c *ApiController) UploadAvatar() {
|
||||||
var resp Response
|
var resp Response
|
||||||
username := c.GetSessionUser()
|
username := c.GetSessionUser()
|
||||||
|
@ -20,6 +20,11 @@ import (
|
|||||||
"github.com/casdoor/casdoor/object"
|
"github.com/casdoor/casdoor/object"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// @Title GetApplications
|
||||||
|
// @Description get all applications
|
||||||
|
// @Param owner query string true "The owner of applications."
|
||||||
|
// @Success 200 {array} object.Application The Response object
|
||||||
|
// @router /get-applications [get]
|
||||||
func (c *ApiController) GetApplications() {
|
func (c *ApiController) GetApplications() {
|
||||||
owner := c.Input().Get("owner")
|
owner := c.Input().Get("owner")
|
||||||
|
|
||||||
@ -27,6 +32,11 @@ func (c *ApiController) GetApplications() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetApplication
|
||||||
|
// @Description get the detail of an application
|
||||||
|
// @Param id query string true "The id of the application."
|
||||||
|
// @Success 200 {object} object.Application The Response object
|
||||||
|
// @router /get-application [get]
|
||||||
func (c *ApiController) GetApplication() {
|
func (c *ApiController) GetApplication() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -34,6 +44,12 @@ func (c *ApiController) GetApplication() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title UpdateApplication
|
||||||
|
// @Description update an application
|
||||||
|
// @Param id query string true "The id of the application"
|
||||||
|
// @Param body body object.Application true "The details of the application"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /update-application [post]
|
||||||
func (c *ApiController) UpdateApplication() {
|
func (c *ApiController) UpdateApplication() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -47,6 +63,11 @@ func (c *ApiController) UpdateApplication() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title AddApplication
|
||||||
|
// @Description add an application
|
||||||
|
// @Param body body object.Application true "The details of the application"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /add-application [post]
|
||||||
func (c *ApiController) AddApplication() {
|
func (c *ApiController) AddApplication() {
|
||||||
var application object.Application
|
var application object.Application
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &application)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &application)
|
||||||
@ -58,6 +79,11 @@ func (c *ApiController) AddApplication() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title DeleteApplication
|
||||||
|
// @Description delete an application
|
||||||
|
// @Param body body object.Application true "The details of the application"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /delete-application [post]
|
||||||
func (c *ApiController) DeleteApplication() {
|
func (c *ApiController) DeleteApplication() {
|
||||||
var application object.Application
|
var application object.Application
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &application)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &application)
|
||||||
|
@ -53,6 +53,15 @@ func (c *ApiController) HandleLoggedIn(userId string, form *RequestForm) *Respon
|
|||||||
return resp
|
return resp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetApplicationLogin
|
||||||
|
// @Description get application login
|
||||||
|
// @Param clientId query string true "client id"
|
||||||
|
// @Param responseType query string true "response type"
|
||||||
|
// @Param redirectUri query string true "redirect uri"
|
||||||
|
// @Param scope query string true "scope"
|
||||||
|
// @Param state query string true "state"
|
||||||
|
// @Success 200 {object} controllers.api_controller.Response The Response object
|
||||||
|
// @router /update-application [get]
|
||||||
func (c *ApiController) GetApplicationLogin() {
|
func (c *ApiController) GetApplicationLogin() {
|
||||||
var resp Response
|
var resp Response
|
||||||
|
|
||||||
@ -72,6 +81,12 @@ func (c *ApiController) GetApplicationLogin() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title Login
|
||||||
|
// @Description login
|
||||||
|
// @Param oAuthParams query string true "oAuth parameters"
|
||||||
|
// @Param body body RequestForm true "Login information"
|
||||||
|
// @Success 200 {object} controllers.api_controller.Response The Response object
|
||||||
|
// @router /login [post]
|
||||||
func (c *ApiController) Login() {
|
func (c *ApiController) Login() {
|
||||||
resp := &Response{Status: "null", Msg: ""}
|
resp := &Response{Status: "null", Msg: ""}
|
||||||
var form RequestForm
|
var form RequestForm
|
||||||
|
@ -20,6 +20,11 @@ import (
|
|||||||
"github.com/casdoor/casdoor/object"
|
"github.com/casdoor/casdoor/object"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// @Title GetOrganizations
|
||||||
|
// @Description get organizations
|
||||||
|
// @Param owner query string true "owner"
|
||||||
|
// @Success 200 {array} object.Organization The Response object
|
||||||
|
// @router /get-organizations [get]
|
||||||
func (c *ApiController) GetOrganizations() {
|
func (c *ApiController) GetOrganizations() {
|
||||||
owner := c.Input().Get("owner")
|
owner := c.Input().Get("owner")
|
||||||
|
|
||||||
@ -27,6 +32,11 @@ func (c *ApiController) GetOrganizations() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetOrganization
|
||||||
|
// @Description get organization
|
||||||
|
// @Param id query string true "organization id"
|
||||||
|
// @Success 200 {object} object.Organization The Response object
|
||||||
|
// @router /get-organization [get]
|
||||||
func (c *ApiController) GetOrganization() {
|
func (c *ApiController) GetOrganization() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -34,6 +44,12 @@ func (c *ApiController) GetOrganization() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title UpdateOrganization
|
||||||
|
// @Description update organization
|
||||||
|
// @Param id query string true "The id of the organization"
|
||||||
|
// @Param body body object.Organization true "The details of the organization"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /update-organization [post]
|
||||||
func (c *ApiController) UpdateOrganization() {
|
func (c *ApiController) UpdateOrganization() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -47,6 +63,11 @@ func (c *ApiController) UpdateOrganization() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title AddOrganization
|
||||||
|
// @Description add organization
|
||||||
|
// @Param body body object.Organization true "The details of the organization"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /add-organization [post]
|
||||||
func (c *ApiController) AddOrganization() {
|
func (c *ApiController) AddOrganization() {
|
||||||
var organization object.Organization
|
var organization object.Organization
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &organization)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &organization)
|
||||||
@ -58,6 +79,11 @@ func (c *ApiController) AddOrganization() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title DeleteOrganization
|
||||||
|
// @Description delete organization
|
||||||
|
// @Param body body object.Organization true "The details of the organization"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /delete-organization [post]
|
||||||
func (c *ApiController) DeleteOrganization() {
|
func (c *ApiController) DeleteOrganization() {
|
||||||
var organization object.Organization
|
var organization object.Organization
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &organization)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &organization)
|
||||||
|
@ -20,6 +20,11 @@ import (
|
|||||||
"github.com/casdoor/casdoor/object"
|
"github.com/casdoor/casdoor/object"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// @Title GetProviders
|
||||||
|
// @Description get providers
|
||||||
|
// @Param owner query string true "The owner of providers"
|
||||||
|
// @Success 200 {array} object.Provider The Response object
|
||||||
|
// @router /get-providers [get]
|
||||||
func (c *ApiController) GetProviders() {
|
func (c *ApiController) GetProviders() {
|
||||||
owner := c.Input().Get("owner")
|
owner := c.Input().Get("owner")
|
||||||
|
|
||||||
@ -27,6 +32,11 @@ func (c *ApiController) GetProviders() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetProvider
|
||||||
|
// @Description get provider
|
||||||
|
// @Param id query string true "The id of the provider"
|
||||||
|
// @Success 200 {object} object.Provider The Response object
|
||||||
|
// @router /get-provider [get]
|
||||||
func (c *ApiController) GetProvider() {
|
func (c *ApiController) GetProvider() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -34,6 +44,12 @@ func (c *ApiController) GetProvider() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title UpdateProvider
|
||||||
|
// @Description update provider
|
||||||
|
// @Param id query string true "The id of the provider"
|
||||||
|
// @Param body body object.Provider true "The details of the provider"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /update-provider [post]
|
||||||
func (c *ApiController) UpdateProvider() {
|
func (c *ApiController) UpdateProvider() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -47,6 +63,11 @@ func (c *ApiController) UpdateProvider() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title AddProvider
|
||||||
|
// @Description add provider
|
||||||
|
// @Param body body object.Provider true "The details of the provider"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /add-provider [post]
|
||||||
func (c *ApiController) AddProvider() {
|
func (c *ApiController) AddProvider() {
|
||||||
var provider object.Provider
|
var provider object.Provider
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &provider)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &provider)
|
||||||
@ -58,6 +79,11 @@ func (c *ApiController) AddProvider() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title DeleteProvider
|
||||||
|
// @Description delete provider
|
||||||
|
// @Param body body object.Provider true "The details of the provider"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /delete-provider [post]
|
||||||
func (c *ApiController) DeleteProvider() {
|
func (c *ApiController) DeleteProvider() {
|
||||||
var provider object.Provider
|
var provider object.Provider
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &provider)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &provider)
|
||||||
|
@ -20,6 +20,11 @@ import (
|
|||||||
"github.com/casdoor/casdoor/object"
|
"github.com/casdoor/casdoor/object"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// @Title GetTokens
|
||||||
|
// @Description get tokens
|
||||||
|
// @Param owner query string true "The owner of tokens"
|
||||||
|
// @Success 200 {array} object.Token The Response object
|
||||||
|
// @router /get-tokens [get]
|
||||||
func (c *ApiController) GetTokens() {
|
func (c *ApiController) GetTokens() {
|
||||||
owner := c.Input().Get("owner")
|
owner := c.Input().Get("owner")
|
||||||
|
|
||||||
@ -27,6 +32,11 @@ func (c *ApiController) GetTokens() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetToken
|
||||||
|
// @Description get token
|
||||||
|
// @Param id query string true "The id of token"
|
||||||
|
// @Success 200 {object} object.Token The Response object
|
||||||
|
// @router /get-token [get]
|
||||||
func (c *ApiController) GetToken() {
|
func (c *ApiController) GetToken() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -34,6 +44,12 @@ func (c *ApiController) GetToken() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title UpdateToken
|
||||||
|
// @Description update token
|
||||||
|
// @Param id query string true "The id of token"
|
||||||
|
// @Param body body object.Token true "Details of the token"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /update-token [post]
|
||||||
func (c *ApiController) UpdateToken() {
|
func (c *ApiController) UpdateToken() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -47,6 +63,11 @@ func (c *ApiController) UpdateToken() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title AddToken
|
||||||
|
// @Description add token
|
||||||
|
// @Param body body object.Token true "Details of the token"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /add-token [post]
|
||||||
func (c *ApiController) AddToken() {
|
func (c *ApiController) AddToken() {
|
||||||
var token object.Token
|
var token object.Token
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &token)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &token)
|
||||||
@ -58,6 +79,11 @@ func (c *ApiController) AddToken() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title DeleteToken
|
||||||
|
// @Description delete token
|
||||||
|
// @Param body body object.Token true "Details of the token"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /delete-token [post]
|
||||||
func (c *ApiController) DeleteToken() {
|
func (c *ApiController) DeleteToken() {
|
||||||
var token object.Token
|
var token object.Token
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &token)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &token)
|
||||||
@ -69,6 +95,14 @@ func (c *ApiController) DeleteToken() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetOAuthToken
|
||||||
|
// @Description get oAuth token
|
||||||
|
// @Param grant_type query string true "oAuth grant type"
|
||||||
|
// @Param client_id query string true "oAuth client id"
|
||||||
|
// @Param client_secret query string true "oAuth client secret"
|
||||||
|
// @Param code query string true "oAuth code"
|
||||||
|
// @Success 200 {object} object.TokenWrapper The Response object
|
||||||
|
// @router /login/oauth/access_token [post]
|
||||||
func (c *ApiController) GetOAuthToken() {
|
func (c *ApiController) GetOAuthToken() {
|
||||||
grantType := c.Input().Get("grant_type")
|
grantType := c.Input().Get("grant_type")
|
||||||
clientId := c.Input().Get("client_id")
|
clientId := c.Input().Get("client_id")
|
||||||
|
@ -20,11 +20,20 @@ import (
|
|||||||
"github.com/casdoor/casdoor/object"
|
"github.com/casdoor/casdoor/object"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// @Title GetGlobalUsers
|
||||||
|
// @Description get global users
|
||||||
|
// @Success 200 {array} object.User The Response object
|
||||||
|
// @router /get-global-users [get]
|
||||||
func (c *ApiController) GetGlobalUsers() {
|
func (c *ApiController) GetGlobalUsers() {
|
||||||
c.Data["json"] = object.GetGlobalUsers()
|
c.Data["json"] = object.GetGlobalUsers()
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetUsers
|
||||||
|
// @Description
|
||||||
|
// @Param owner query string true "The owner of users"
|
||||||
|
// @Success 200 {array} object.User The Response object
|
||||||
|
// @router /get-users [get]
|
||||||
func (c *ApiController) GetUsers() {
|
func (c *ApiController) GetUsers() {
|
||||||
owner := c.Input().Get("owner")
|
owner := c.Input().Get("owner")
|
||||||
|
|
||||||
@ -32,6 +41,11 @@ func (c *ApiController) GetUsers() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title GetUser
|
||||||
|
// @Description get user
|
||||||
|
// @Param id query string true "The id of the user"
|
||||||
|
// @Success 200 {object} object.User The Response object
|
||||||
|
// @router /get-user [get]
|
||||||
func (c *ApiController) GetUser() {
|
func (c *ApiController) GetUser() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -39,6 +53,12 @@ func (c *ApiController) GetUser() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title UpdateUser
|
||||||
|
// @Description update user
|
||||||
|
// @Param id query string true "The id of the user"
|
||||||
|
// @Param body body object.User true "The details of the user"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /update-user [post]
|
||||||
func (c *ApiController) UpdateUser() {
|
func (c *ApiController) UpdateUser() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
@ -52,6 +72,11 @@ func (c *ApiController) UpdateUser() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title AddUser
|
||||||
|
// @Description add user
|
||||||
|
// @Param body body object.User true "The details of the user"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /add-user [post]
|
||||||
func (c *ApiController) AddUser() {
|
func (c *ApiController) AddUser() {
|
||||||
var user object.User
|
var user object.User
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &user)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &user)
|
||||||
@ -63,6 +88,11 @@ func (c *ApiController) AddUser() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title DeleteUser
|
||||||
|
// @Description delete user
|
||||||
|
// @Param body body object.User true "The details of the user"
|
||||||
|
// @Success 200 {object} controllers.Response The Response object
|
||||||
|
// @router /delete-user [post]
|
||||||
func (c *ApiController) DeleteUser() {
|
func (c *ApiController) DeleteUser() {
|
||||||
var user object.User
|
var user object.User
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &user)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &user)
|
||||||
|
2
main.go
2
main.go
@ -41,6 +41,8 @@ func main() {
|
|||||||
|
|
||||||
//beego.DelStaticPath("/static")
|
//beego.DelStaticPath("/static")
|
||||||
beego.SetStaticPath("/static", "web/build/static")
|
beego.SetStaticPath("/static", "web/build/static")
|
||||||
|
beego.BConfig.WebConfig.DirectoryIndex = true
|
||||||
|
beego.SetStaticPath("/swagger", "swagger")
|
||||||
// https://studygolang.com/articles/2303
|
// https://studygolang.com/articles/2303
|
||||||
beego.InsertFilter("*", beego.BeforeRouter, routers.StaticFilter)
|
beego.InsertFilter("*", beego.BeforeRouter, routers.StaticFilter)
|
||||||
beego.InsertFilter("*", beego.BeforeRouter, routers.AutoLoginFilter)
|
beego.InsertFilter("*", beego.BeforeRouter, routers.AutoLoginFilter)
|
||||||
|
@ -12,6 +12,10 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
|
// @APIVersion 1.0.0
|
||||||
|
// @Title Casdoor API
|
||||||
|
// @Description Documentation of Casdoor API
|
||||||
|
// @Contact admin@casbin.org
|
||||||
package routers
|
package routers
|
||||||
|
|
||||||
import (
|
import (
|
||||||
@ -27,8 +31,10 @@ func init() {
|
|||||||
func initAPI() {
|
func initAPI() {
|
||||||
ns :=
|
ns :=
|
||||||
beego.NewNamespace("/api",
|
beego.NewNamespace("/api",
|
||||||
beego.NSInclude(
|
beego.NSNamespace("/api",
|
||||||
&controllers.ApiController{},
|
beego.NSInclude(
|
||||||
|
&controllers.ApiController{},
|
||||||
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
beego.AddNamespace(ns)
|
beego.AddNamespace(ns)
|
||||||
|
BIN
swagger/favicon-16x16.png
Normal file
BIN
swagger/favicon-16x16.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 445 B |
BIN
swagger/favicon-32x32.png
Normal file
BIN
swagger/favicon-32x32.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
93
swagger/index.html
Normal file
93
swagger/index.html
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
<!-- HTML for static distribution bundle build -->
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Swagger UI</title>
|
||||||
|
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700" rel="stylesheet">
|
||||||
|
<link rel="stylesheet" type="text/css" href="./swagger-ui.css" >
|
||||||
|
<link rel="icon" type="image/png" href="./favicon-32x32.png" sizes="32x32" />
|
||||||
|
<link rel="icon" type="image/png" href="./favicon-16x16.png" sizes="16x16" />
|
||||||
|
<style>
|
||||||
|
html
|
||||||
|
{
|
||||||
|
box-sizing: border-box;
|
||||||
|
overflow: -moz-scrollbars-vertical;
|
||||||
|
overflow-y: scroll;
|
||||||
|
}
|
||||||
|
*,
|
||||||
|
*:before,
|
||||||
|
*:after
|
||||||
|
{
|
||||||
|
box-sizing: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin:0;
|
||||||
|
background: #fafafa;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="position:absolute;width:0;height:0">
|
||||||
|
<defs>
|
||||||
|
<symbol viewBox="0 0 20 20" id="unlocked">
|
||||||
|
<path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
<symbol viewBox="0 0 20 20" id="locked">
|
||||||
|
<path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z"/>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
<symbol viewBox="0 0 20 20" id="close">
|
||||||
|
<path d="M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z"/>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
<symbol viewBox="0 0 20 20" id="large-arrow">
|
||||||
|
<path d="M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z"/>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
<symbol viewBox="0 0 20 20" id="large-arrow-down">
|
||||||
|
<path d="M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z"/>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
|
||||||
|
<symbol viewBox="0 0 24 24" id="jump-to">
|
||||||
|
<path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z"/>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
<symbol viewBox="0 0 24 24" id="expand">
|
||||||
|
<path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"/>
|
||||||
|
</symbol>
|
||||||
|
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
|
||||||
|
<div id="swagger-ui"></div>
|
||||||
|
|
||||||
|
<script src="./swagger-ui-bundle.js"> </script>
|
||||||
|
<script src="./swagger-ui-standalone-preset.js"> </script>
|
||||||
|
<script>
|
||||||
|
window.onload = function() {
|
||||||
|
// Build a system
|
||||||
|
const ui = SwaggerUIBundle({
|
||||||
|
url: "swagger.json",
|
||||||
|
dom_id: '#swagger-ui',
|
||||||
|
presets: [
|
||||||
|
SwaggerUIBundle.presets.apis,
|
||||||
|
SwaggerUIStandalonePreset
|
||||||
|
],
|
||||||
|
plugins: [
|
||||||
|
SwaggerUIBundle.plugins.DownloadUrl
|
||||||
|
],
|
||||||
|
layout: "StandaloneLayout"
|
||||||
|
})
|
||||||
|
|
||||||
|
window.ui = ui
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
53
swagger/oauth2-redirect.html
Normal file
53
swagger/oauth2-redirect.html
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en-US">
|
||||||
|
<body onload="run()">
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
<script>
|
||||||
|
'use strict';
|
||||||
|
function run () {
|
||||||
|
var oauth2 = window.opener.swaggerUIRedirectOauth2;
|
||||||
|
var sentState = oauth2.state;
|
||||||
|
var isValid, qp, arr;
|
||||||
|
|
||||||
|
qp = (window.location.hash || location.search).substring(1);
|
||||||
|
|
||||||
|
arr = qp.split("&")
|
||||||
|
arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';})
|
||||||
|
qp = qp ? JSON.parse('{' + arr.join() + '}',
|
||||||
|
function (key, value) {
|
||||||
|
return key === "" ? value : decodeURIComponent(value)
|
||||||
|
}
|
||||||
|
) : {}
|
||||||
|
|
||||||
|
isValid = qp.state === sentState
|
||||||
|
|
||||||
|
if (oauth2.auth.schema.get("flow") === "accessCode" && !oauth2.auth.code) {
|
||||||
|
if (!isValid) {
|
||||||
|
oauth2.errCb({
|
||||||
|
authId: oauth2.auth.name,
|
||||||
|
source: "auth",
|
||||||
|
level: "warning",
|
||||||
|
message: "Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (qp.code) {
|
||||||
|
delete oauth2.state;
|
||||||
|
oauth2.auth.code = qp.code;
|
||||||
|
oauth2.callback(oauth2.auth);
|
||||||
|
} else {
|
||||||
|
oauth2.errCb({
|
||||||
|
authId: oauth2.auth.name,
|
||||||
|
source: "auth",
|
||||||
|
level: "error",
|
||||||
|
message: "Authorization failed: no accessCode received from the server"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid});
|
||||||
|
}
|
||||||
|
window.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
108
swagger/swagger-ui-bundle.js
Normal file
108
swagger/swagger-ui-bundle.js
Normal file
File diff suppressed because one or more lines are too long
1
swagger/swagger-ui-bundle.js.map
Normal file
1
swagger/swagger-ui-bundle.js.map
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"swagger-ui-bundle.js","sources":["webpack:///swagger-ui-bundle.js"],"mappings":"AAAA;AAu/FA;AA6+FA;;;;;;;;;;;;;;;;;;;;;;;;;;AAyTA;;;;;;AAoIA;AAi7FA;AAmtCA;AAi0IA;AA0oJA;AAgwFA;AAyrGA;AA0lFA;AA4nFA;AA+9CA;AA+gDA;AAwrCA;AA60EA;;;;;AA6oCA;AAsyJA;;;;;;;;;;;;;;AA64EA;AA4mIA;AAquJA;AA2qHA;AA2mGA;AAiiEA;AAq4DA;AAg3DA;AAoPA;;;;;;AAk7FA;AA07FA;;;;;AAi8CA;AAgsFA;AAs2CA;AAglCA;AAu9CA;AAy8EA;AAsiCA;AA+yFA;;;;;;;;;AAgkDA;AA2zIA;AAu7FA;AAmrFA;AAu0EA","sourceRoot":""}
|
20
swagger/swagger-ui-standalone-preset.js
Normal file
20
swagger/swagger-ui-standalone-preset.js
Normal file
File diff suppressed because one or more lines are too long
1
swagger/swagger-ui-standalone-preset.js.map
Normal file
1
swagger/swagger-ui-standalone-preset.js.map
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"swagger-ui-standalone-preset.js","sources":["webpack:///swagger-ui-standalone-preset.js"],"mappings":"AAAA;;;;;AA8QA;AAmvGA;AAuxFA;;;;;;AAocA;AAkvFA;AAu+CA;AAo+CA;AAgrCA;AAuyEA","sourceRoot":""}
|
2
swagger/swagger-ui.css
Normal file
2
swagger/swagger-ui.css
Normal file
File diff suppressed because one or more lines are too long
1
swagger/swagger-ui.css.map
Normal file
1
swagger/swagger-ui.css.map
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"swagger-ui.css","sources":[],"mappings":"","sourceRoot":""}
|
15
swagger/swagger-ui.js
Normal file
15
swagger/swagger-ui.js
Normal file
File diff suppressed because one or more lines are too long
1
swagger/swagger-ui.js.map
Normal file
1
swagger/swagger-ui.js.map
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"swagger-ui.js","sources":["webpack:///swagger-ui.js"],"mappings":"AAAA;;;;;;AA0yCA;AAoyHA;AAmyHA;AAykGA;AA+9BA;AA6iCA;AAojCA;AAu5BA","sourceRoot":""}
|
1262
swagger/swagger.json
Normal file
1262
swagger/swagger.json
Normal file
File diff suppressed because it is too large
Load Diff
831
swagger/swagger.yml
Normal file
831
swagger/swagger.yml
Normal file
@ -0,0 +1,831 @@
|
|||||||
|
swagger: "2.0"
|
||||||
|
info:
|
||||||
|
title: Casdoor API
|
||||||
|
description: Documentation of Casdoor API
|
||||||
|
version: 1.0.0
|
||||||
|
contact:
|
||||||
|
email: admin@casbin.org
|
||||||
|
basePath: /api
|
||||||
|
paths:
|
||||||
|
/api/add-application:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: add an application
|
||||||
|
operationId: ApiController.AddApplication
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the application
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Application'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/add-organization:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: add organization
|
||||||
|
operationId: ApiController.AddOrganization
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the organization
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Organization'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/add-provider:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: add provider
|
||||||
|
operationId: ApiController.AddProvider
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the provider
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Provider'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/add-token:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: add token
|
||||||
|
operationId: ApiController.AddToken
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: Details of the token
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Token'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/add-user:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: add user
|
||||||
|
operationId: ApiController.AddUser
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the user
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.User'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/delete-application:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: delete an application
|
||||||
|
operationId: ApiController.DeleteApplication
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the application
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Application'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/delete-organization:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: delete organization
|
||||||
|
operationId: ApiController.DeleteOrganization
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the organization
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Organization'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/delete-provider:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: delete provider
|
||||||
|
operationId: ApiController.DeleteProvider
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the provider
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Provider'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/delete-token:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: delete token
|
||||||
|
operationId: ApiController.DeleteToken
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: Details of the token
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Token'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/delete-user:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: delete user
|
||||||
|
operationId: ApiController.DeleteUser
|
||||||
|
parameters:
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the user
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.User'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/get-account:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get the details of the current account
|
||||||
|
operationId: ApiController.GetAccount
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/get-application:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get the detail of an application
|
||||||
|
operationId: ApiController.GetApplication
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the application.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Application'
|
||||||
|
/api/get-applications:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get all applications
|
||||||
|
operationId: ApiController.GetApplications
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: owner
|
||||||
|
description: The owner of applications.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.Application'
|
||||||
|
/api/get-global-users:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get global users
|
||||||
|
operationId: ApiController.GetGlobalUsers
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.User'
|
||||||
|
/api/get-organization:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get organization
|
||||||
|
operationId: ApiController.GetOrganization
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: organization id
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Organization'
|
||||||
|
/api/get-organizations:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get organizations
|
||||||
|
operationId: ApiController.GetOrganizations
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: owner
|
||||||
|
description: owner
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.Organization'
|
||||||
|
/api/get-provider:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get provider
|
||||||
|
operationId: ApiController.GetProvider
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the provider
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Provider'
|
||||||
|
/api/get-providers:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get providers
|
||||||
|
operationId: ApiController.GetProviders
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: owner
|
||||||
|
description: The owner of providers
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.Provider'
|
||||||
|
/api/get-token:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get token
|
||||||
|
operationId: ApiController.GetToken
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of token
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Token'
|
||||||
|
/api/get-tokens:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get tokens
|
||||||
|
operationId: ApiController.GetTokens
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: owner
|
||||||
|
description: The owner of tokens
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.Token'
|
||||||
|
/api/get-user:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get user
|
||||||
|
operationId: ApiController.GetUser
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the user
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.User'
|
||||||
|
/api/get-users:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
operationId: ApiController.GetUsers
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: owner
|
||||||
|
description: The owner of users
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.User'
|
||||||
|
/api/login:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: login
|
||||||
|
operationId: ApiController.Login
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: oAuthParams
|
||||||
|
description: oAuth parameters
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: Login information
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/RequestForm'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.api_controller.Response'
|
||||||
|
/api/login/oauth/access_token:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get oAuth token
|
||||||
|
operationId: ApiController.GetOAuthToken
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: grant_type
|
||||||
|
description: oAuth grant type
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: client_id
|
||||||
|
description: oAuth client id
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: client_secret
|
||||||
|
description: oAuth client secret
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: code
|
||||||
|
description: oAuth code
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.TokenWrapper'
|
||||||
|
/api/logout:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: logout the current user
|
||||||
|
operationId: ApiController.Logout
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/register:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: register a new user
|
||||||
|
operationId: ApiController.Register
|
||||||
|
parameters:
|
||||||
|
- in: formData
|
||||||
|
name: username
|
||||||
|
description: The username to register
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: formData
|
||||||
|
name: password
|
||||||
|
description: The password
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/update-application:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: get application login
|
||||||
|
operationId: ApiController.GetApplicationLogin
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: clientId
|
||||||
|
description: client id
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: responseType
|
||||||
|
description: response type
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: redirectUri
|
||||||
|
description: redirect uri
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: scope
|
||||||
|
description: scope
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: state
|
||||||
|
description: state
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.api_controller.Response'
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: update an application
|
||||||
|
operationId: ApiController.UpdateApplication
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the application
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the application
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Application'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/update-organization:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: update organization
|
||||||
|
operationId: ApiController.UpdateOrganization
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the organization
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the organization
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Organization'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/update-provider:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: update provider
|
||||||
|
operationId: ApiController.UpdateProvider
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the provider
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the provider
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Provider'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/update-token:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: update token
|
||||||
|
operationId: ApiController.UpdateToken
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of token
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: Details of the token
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.Token'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/update-user:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: update user
|
||||||
|
operationId: ApiController.UpdateUser
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: id
|
||||||
|
description: The id of the user
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: body
|
||||||
|
name: body
|
||||||
|
description: The details of the user
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/object.User'
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
/api/upload-avatar:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- api
|
||||||
|
description: register a new user
|
||||||
|
operationId: ApiController.UploadAvatar
|
||||||
|
parameters:
|
||||||
|
- in: formData
|
||||||
|
name: avatarfile
|
||||||
|
description: The base64 encode of avatarfile
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: formData
|
||||||
|
name: password
|
||||||
|
description: The password
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: The Response object
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/controllers.Response'
|
||||||
|
definitions:
|
||||||
|
1471.0xc0003bd890.false:
|
||||||
|
title: "false"
|
||||||
|
type: object
|
||||||
|
RequestForm:
|
||||||
|
title: RequestForm
|
||||||
|
type: object
|
||||||
|
controllers.Response:
|
||||||
|
title: Response
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
data:
|
||||||
|
$ref: '#/definitions/1471.0xc0003bd890.false'
|
||||||
|
msg:
|
||||||
|
type: string
|
||||||
|
status:
|
||||||
|
type: string
|
||||||
|
controllers.api_controller.Response:
|
||||||
|
title: Response
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
data:
|
||||||
|
$ref: '#/definitions/1471.0xc0003bd890.false'
|
||||||
|
msg:
|
||||||
|
type: string
|
||||||
|
status:
|
||||||
|
type: string
|
||||||
|
object.Application:
|
||||||
|
title: Application
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
clientId:
|
||||||
|
type: string
|
||||||
|
clientSecret:
|
||||||
|
type: string
|
||||||
|
createdTime:
|
||||||
|
type: string
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
displayName:
|
||||||
|
type: string
|
||||||
|
enablePassword:
|
||||||
|
type: boolean
|
||||||
|
enableSignUp:
|
||||||
|
type: boolean
|
||||||
|
expireInHours:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
homepageUrl:
|
||||||
|
type: string
|
||||||
|
logo:
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
organization:
|
||||||
|
type: string
|
||||||
|
owner:
|
||||||
|
type: string
|
||||||
|
providerObjs:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/object.Provider'
|
||||||
|
providers:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
redirectUris:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
object.Organization:
|
||||||
|
title: Organization
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
createdTime:
|
||||||
|
type: string
|
||||||
|
displayName:
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
owner:
|
||||||
|
type: string
|
||||||
|
websiteUrl:
|
||||||
|
type: string
|
||||||
|
object.Provider:
|
||||||
|
title: Provider
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
clientId:
|
||||||
|
type: string
|
||||||
|
clientSecret:
|
||||||
|
type: string
|
||||||
|
createdTime:
|
||||||
|
type: string
|
||||||
|
displayName:
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
owner:
|
||||||
|
type: string
|
||||||
|
providerUrl:
|
||||||
|
type: string
|
||||||
|
type:
|
||||||
|
type: string
|
||||||
|
object.Token:
|
||||||
|
title: Token
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
accessToken:
|
||||||
|
type: string
|
||||||
|
application:
|
||||||
|
type: string
|
||||||
|
code:
|
||||||
|
type: string
|
||||||
|
createdTime:
|
||||||
|
type: string
|
||||||
|
expiresIn:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
owner:
|
||||||
|
type: string
|
||||||
|
scope:
|
||||||
|
type: string
|
||||||
|
tokenType:
|
||||||
|
type: string
|
||||||
|
object.TokenWrapper:
|
||||||
|
title: TokenWrapper
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
access_token:
|
||||||
|
type: string
|
||||||
|
expires_in:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
scope:
|
||||||
|
type: string
|
||||||
|
token_type:
|
||||||
|
type: string
|
||||||
|
object.User:
|
||||||
|
title: User
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
affiliation:
|
||||||
|
type: string
|
||||||
|
avatar:
|
||||||
|
type: string
|
||||||
|
createdTime:
|
||||||
|
type: string
|
||||||
|
displayName:
|
||||||
|
type: string
|
||||||
|
email:
|
||||||
|
type: string
|
||||||
|
github:
|
||||||
|
type: string
|
||||||
|
google:
|
||||||
|
type: string
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
isAdmin:
|
||||||
|
type: boolean
|
||||||
|
isGlobalAdmin:
|
||||||
|
type: boolean
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
owner:
|
||||||
|
type: string
|
||||||
|
password:
|
||||||
|
type: string
|
||||||
|
passwordType:
|
||||||
|
type: string
|
||||||
|
phone:
|
||||||
|
type: string
|
||||||
|
qq:
|
||||||
|
type: string
|
||||||
|
tag:
|
||||||
|
type: string
|
@ -285,6 +285,11 @@ class App extends Component {
|
|||||||
</Menu.Item>
|
</Menu.Item>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
res.push(
|
||||||
|
<Menu.Item key="6" onClick={() => window.location.href = "/swagger"}>
|
||||||
|
{i18next.t("general:Swagger")}
|
||||||
|
</Menu.Item>
|
||||||
|
);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,7 +25,8 @@
|
|||||||
"User containers": "User containers",
|
"User containers": "User containers",
|
||||||
"Users under all organizations": "Users under all organizations",
|
"Users under all organizations": "Users under all organizations",
|
||||||
"OAuth providers": "OAuth providers",
|
"OAuth providers": "OAuth providers",
|
||||||
"Applications that requires authentication": "Applications that requires authentication"
|
"Applications that requires authentication": "Applications that requires authentication",
|
||||||
|
"Swagger": "Swagger"
|
||||||
},
|
},
|
||||||
"account":
|
"account":
|
||||||
{
|
{
|
||||||
|
@ -25,7 +25,8 @@
|
|||||||
"User containers": "用户容器",
|
"User containers": "用户容器",
|
||||||
"Users under all organizations": "所有组织里的用户",
|
"Users under all organizations": "所有组织里的用户",
|
||||||
"OAuth providers": "OAuth提供方",
|
"OAuth providers": "OAuth提供方",
|
||||||
"Applications that requires authentication": "需要鉴权的应用"
|
"Applications that requires authentication": "需要鉴权的应用",
|
||||||
|
"Swagger": "API总览"
|
||||||
},
|
},
|
||||||
"account":
|
"account":
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user