update error
This commit is contained in:
parent
c453422cac
commit
632b27639a
@ -1,6 +1,8 @@
|
||||
package photosapi
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
@ -13,9 +15,17 @@ func (s *Service) HandleError(c *gin.Context) {
|
||||
c.Next()
|
||||
|
||||
if err := c.Errors.Last(); err != nil {
|
||||
c.JSON(-1, gin.H{
|
||||
"status": StatusFailed,
|
||||
"error": err.Err.Error(),
|
||||
})
|
||||
if err.IsType(gin.ErrorTypeBind) {
|
||||
c.JSON(-1, gin.H{
|
||||
"status": StatusFailed,
|
||||
"error": "binding error",
|
||||
"details": strings.Split(err.Error(), "\n"),
|
||||
})
|
||||
} else {
|
||||
c.JSON(-1, gin.H{
|
||||
"status": StatusFailed,
|
||||
"error": err.Error(),
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -36,21 +36,14 @@ func (s *Service) UploadCreate(c *gin.Context) {
|
||||
}
|
||||
|
||||
type UploadPartRequest struct {
|
||||
UploadId string `uri:"upload_id" binding:"required,uuid"`
|
||||
Part uint `uri:"part" binding:"required"`
|
||||
}
|
||||
type UploadPartHeaders struct {
|
||||
PartSha256 string `header:"x-part-sha256" binding:"required,lowercase,alphanum,len=64"`
|
||||
UploadId string `form:"upload_id" binding:"required,uuid"`
|
||||
Part uint `form:"part" binding:"required"`
|
||||
PartSha256 string `form:"sha256" binding:"required,sha256"`
|
||||
}
|
||||
|
||||
func (s *Service) UploadPart(c *gin.Context) {
|
||||
var uploadPart UploadPartRequest
|
||||
if c.BindUri(&uploadPart) != nil {
|
||||
return
|
||||
}
|
||||
|
||||
var uploadPartHeaders UploadPartHeaders
|
||||
if c.BindHeader(&uploadPartHeaders) != nil {
|
||||
if c.BindQuery(&uploadPart) != nil {
|
||||
return
|
||||
}
|
||||
|
||||
@ -101,7 +94,7 @@ func (s *Service) UploadCancel(c *gin.Context) {
|
||||
}
|
||||
|
||||
type UploadCompleteRequest struct {
|
||||
Sha256 string `json:"sha256" binding:"required,lowercase,alphanum,len=64"`
|
||||
Sha256 string `json:"sha256" binding:"required,sha256"`
|
||||
Name string `json:"name" binding:"required"`
|
||||
Parts uint `json:"parts" binding:"required"`
|
||||
}
|
||||
@ -121,7 +114,7 @@ func (s *Service) UploadComplete(c *gin.Context) {
|
||||
func (s *Service) UploadInit() {
|
||||
upload := s.Gin.Group("/upload")
|
||||
upload.GET("/create", s.UploadCreate)
|
||||
upload.POST("/part/:upload_id/:part", s.UploadPart)
|
||||
upload.POST("/part", s.UploadPart)
|
||||
upload.GET("/cancel/:upload_id", s.UploadCancel)
|
||||
upload.POST("/complete/:upload_id", s.UploadComplete)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user