mirror of
https://github.com/go-shiori/shiori.git
synced 2025-09-10 23:15:55 +08:00
* refactor: base http server stdlib * refactor: swagger and frontend routes * fix: use global middlewares * refactor: removed gin from testutils * fix: object references in legacy webserver * refactor: legacy, swagger and system handlers * fix: added verbs to handlers * fix: server handlers ordering * refactor: bookmarks handlers * refactor: system api routes * tests: bookmark handlers * refactor: migrated api auth routes * chore: remove unused middlewares * docs: add swagger docs to refactored system api * chore: remove old auth routes * refactor: account apis * chore: removed old handlers * fix: api v1 handlers missing middlewares * refactor: migrated tag list route * refactor: bookmark routes * refactor: remove gin * chore: make styles * test: fixed tests * test: generate binary file without text * fix: global middleware missing from system api handler * fix: incorrect api handler * chore: avoid logging screenshot contents * tests: bookmarks domain * tests: shortcuts * test: missing tests * tests: server tests * test: remove test using syscall to avoid windows errors * chore: added middlewares
39 lines
813 B
Go
39 lines
813 B
Go
package handlers
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"github.com/go-shiori/shiori/internal/dependencies"
|
|
"github.com/sirupsen/logrus"
|
|
)
|
|
|
|
type APIHandler struct {
|
|
logger *logrus.Logger
|
|
deps *dependencies.Dependencies
|
|
}
|
|
|
|
func (h *APIHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
|
switch r.Method {
|
|
case http.MethodGet:
|
|
h.handleGet(w, r)
|
|
case http.MethodPost:
|
|
h.handlePost(w, r)
|
|
default:
|
|
http.Error(w, "Method not allowed", http.StatusMethodNotAllowed)
|
|
}
|
|
}
|
|
|
|
func (h *APIHandler) handleGet(w http.ResponseWriter, r *http.Request) {
|
|
// Implementation
|
|
}
|
|
|
|
func (h *APIHandler) handlePost(w http.ResponseWriter, r *http.Request) {
|
|
// Implementation
|
|
}
|
|
|
|
func NewAPIHandler(logger *logrus.Logger, deps *dependencies.Dependencies) *APIHandler {
|
|
return &APIHandler{
|
|
logger: logger,
|
|
deps: deps,
|
|
}
|
|
}
|