我遇到了一个构建问题。我想知道这是编译器中的错误还是代码有问题。// removed the error handling for sake of clarity file, _ := c.FormFile("file")openedFile, _ := file.Open()buffer := make([]byte, 512)n, _ := openedFile.Read(buffer)contentType := http.DetectContentType(buffer[:n])// doesn't workif contentType != "image/jpeg" || contentType != "image/png" { return }// works if contentType != "image/jpeg" { return}else if contentType != "image/png" { return}错误suspect or: contentType != "image/jpeg" || contentType != "image/png"仅供参考“ c.FormFile("file") ”是形式杜松子酒。但这并不重要。
1 回答
手掌心
TA贡献1942条经验 获得超3个赞
您看到的是编译器警告,但应用程序将运行。
您的情况始终是true:
contentType != "image/jpeg" || contentType != "image/png"
您将一个string变量与 2 个不同的string值(使用不相等)进行比较,因此其中一个肯定是true,并且true || false始终是true。
您很可能需要逻辑 AND:我假设您想测试内容类型是否既不是 JPEG 也不是 PNG:
if contentType != "image/jpeg" && contentType != "image/png" {
return
}
- 1 回答
- 0 关注
- 94 浏览
添加回答
举报
0/150
提交
取消