499439d66b
- 将所有handler中的Fail函数调用替换为FailError以统一错误处理 - 添加FailError函数实现统一的错误日志记录和响应格式 - 移除Next.js配置中的rewrites并实现统一的API路由代理处理器 - 新增路由处理器支持长连接和大文件上传场景的代理转发 - 更新错误处理逻辑避免将内部错误详情暴露给前端用户
39 lines
749 B
Go
39 lines
749 B
Go
package handler
|
|
|
|
import (
|
|
"encoding/json"
|
|
"net/http"
|
|
|
|
"github.com/basketikun/infinite-canvas/model"
|
|
"github.com/basketikun/infinite-canvas/service"
|
|
)
|
|
|
|
func Settings(w http.ResponseWriter, r *http.Request) {
|
|
settings, err := service.PublicSettings()
|
|
if err != nil {
|
|
FailError(w, err)
|
|
return
|
|
}
|
|
OK(w, settings)
|
|
}
|
|
|
|
func AdminSettings(w http.ResponseWriter, r *http.Request) {
|
|
settings, err := service.AdminSettings()
|
|
if err != nil {
|
|
FailError(w, err)
|
|
return
|
|
}
|
|
OK(w, settings)
|
|
}
|
|
|
|
func AdminSaveSettings(w http.ResponseWriter, r *http.Request) {
|
|
var settings model.Settings
|
|
_ = json.NewDecoder(r.Body).Decode(&settings)
|
|
result, err := service.SaveSettings(settings)
|
|
if err != nil {
|
|
FailError(w, err)
|
|
return
|
|
}
|
|
OK(w, result)
|
|
}
|