mirror of
https://github.com/go-shiori/shiori.git
synced 2025-10-08 20:55:58 +08:00
* added 404 template * added auth domain * added embed file for frontend * added base config and dependencies * added basic new http server * added separated server command * updated go modules * removed modd file * Added shortcut to send internal server error response * Added JWT support to Auth Domain * Added JWT support to API * docs: added comments to response struct * naming * inline returns * updated dependencies * production logger * bookmarks endpoint * reverted old views api path * frontend for api v1 * proper 404 error (not working atm) * use response * removed 404 html * server error handler * login and basic auth * adjusted session duration * properly retrieve tags * properly delete bookmark * cleanup * archiver domain * debug routes * bookmark routes * expiration by parameter * move to logrus * logout * frontend cache * updated dependencies * http: migrated to gin * linted * Added version command * unit tests, docs * response test utils and tests * remove logout handler * auth * createtag * improved http test utilities * assert message equals * Remove 1.19 from test matrix * moved api to v1 folder * docs: contribute docs * updated makefile * updated usage docs * warn in server command * updaed docs with shiori version command * Updated documentation * deps: update
34 lines
1.1 KiB
Go
34 lines
1.1 KiB
Go
package response
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
const internalServerErrorMessage = "Internal server error, please contact an administrator"
|
|
|
|
// New provides a shortcut to a successful response object
|
|
func New(ok bool, statusCode int, data interface{}) *Response {
|
|
return NewResponse(ok, data, nil, statusCode)
|
|
}
|
|
|
|
// Send provides a shortcut to send a (potentially) successful response
|
|
func Send(ctx *gin.Context, statusCode int, data interface{}) {
|
|
New(true, statusCode, data).Send(ctx)
|
|
}
|
|
|
|
// SendError provides a shortcut to send an unsuccessful response
|
|
func SendError(ctx *gin.Context, statusCode int, data interface{}) {
|
|
New(false, statusCode, data).Send(ctx)
|
|
}
|
|
|
|
// SendErrorWithParams the same as above but for errors that require error parameters
|
|
func SendErrorWithParams(ctx *gin.Context, statusCode int, data interface{}, errorParams map[string]string) {
|
|
NewResponse(false, data, errorParams, statusCode).Send(ctx)
|
|
}
|
|
|
|
// SendInternalServerError directly sends an internal server error response
|
|
func SendInternalServerError(ctx *gin.Context) {
|
|
SendError(ctx, http.StatusInternalServerError, internalServerErrorMessage)
|
|
}
|