type imageDimensionRequest struct {
ID1 string `json:"id"`
}
// ImageDimension returns image dimenson
func ImageDimension(c *gin.Context) {
var requestBody = imageDimensionRequest{}
c.Bind(&requestBody)
var path = fmt.Sprintf("saved/%v.jpg", requestBody.ID1)
W, H := getImageDimension(path)
c.JSON(http.StatusOK, gin.H{
"STATUS": "OK",
"ID": requestBody.ID1,
"filepath": path,
"Width": W,
"Height": H,
})
}
当我提供“ ID1” JSON输入时,总是出现以下错误
'打开保存的文件/.jpg:没有这样的文件或目录 保存/.jpg:图片:未知格式”
我确实有一个“保存”目录,并且输入的ID是正确的,但仍然无法获取图像尺寸。 JSON输出是
{
"Height": 0,
"ID": "",
"STATUS": "OK",
"Width": 0,
"filepath": "saved/.jpg"
}
我已经导入了图像包
“图像”“图像/ gif” _“ image / gif”“ image / jpeg” _“ image / jpeg”“ image / png” _“ image / png”
并编写了一个init函数。
有人可以告诉我可能的原因和解决方案吗?如果我错过了任何内容,或者过分强调或强调了一点,请在评论中告诉我。
答案 0 :(得分:-2)
此程序的结构字段中有一个警告。
所以我将结构改写为
type imageDimensionRequest struct {
IMAGE string `json:"Image Id"`
}
JSON输出为
c.JSON(http.StatusOK, gin.H{
"Image Id": requestBody.IMAGE,
"Width": W,
"Height": H,
"STATUS": "OK",
})
从而清除所有显示的警告。
JSON主体写为
{
"Image Id":"5462b38d-cfc4-4ac4-8eab-486ba63f3b04"
}
这提供了所需的输出。