mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
Implement v4 endpoints for OAuth (#6040)
* Implement POST /oauth/apps endpoint for APIv4
* Implement GET /oauth/apps endpoint for APIv4
* Implement GET /oauth/apps/{app_id} and /oauth/apps/{app_id}/info endpoints for APIv4
* Refactor API version independent oauth endpoints
* Implement DELETE /oauth/apps/{app_id} endpoint for APIv4
* Implement /oauth/apps/{app_id}/regen_secret endpoint for APIv4
* Implement GET /user/{user_id}/oauth/apps/authorized endpoint for APIv4
* Implement POST /oauth/deauthorize endpoint
This commit is contained in:
28
utils/api.go
28
utils/api.go
@@ -5,7 +5,10 @@ package utils
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strings"
|
||||
|
||||
"github.com/mattermost/platform/model"
|
||||
)
|
||||
|
||||
type OriginCheckerProc func(*http.Request) bool
|
||||
@@ -22,3 +25,28 @@ func GetOriginChecker(r *http.Request) OriginCheckerProc {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func RenderWebError(err *model.AppError, w http.ResponseWriter, r *http.Request) {
|
||||
T, _ := GetTranslationsAndLocale(w, r)
|
||||
|
||||
title := T("api.templates.error.title", map[string]interface{}{"SiteName": ClientCfg["SiteName"]})
|
||||
message := err.Message
|
||||
details := err.DetailedError
|
||||
link := "/"
|
||||
linkMessage := T("api.templates.error.link")
|
||||
|
||||
status := http.StatusTemporaryRedirect
|
||||
if err.StatusCode != http.StatusInternalServerError {
|
||||
status = err.StatusCode
|
||||
}
|
||||
|
||||
http.Redirect(
|
||||
w,
|
||||
r,
|
||||
"/error?title="+url.QueryEscape(title)+
|
||||
"&message="+url.QueryEscape(message)+
|
||||
"&details="+url.QueryEscape(details)+
|
||||
"&link="+url.QueryEscape(link)+
|
||||
"&linkmessage="+url.QueryEscape(linkMessage),
|
||||
status)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user