我是新手,如果这是一个明显的问题,那么抱歉,但我没有找到任何东西,所以我在这里发帖。这实际上是一个由两部分组成的问题。1)所以我的项目目录中有这个Web文件夹。它是公共的,我有一个中间件功能来检查 JWT。我正在使用此逻辑来避免 JWT 身份验证,但它现在可以正常工作。我明白了unauthorized。// List of endpoints that don't require auth by an access token notAuth := []string{"/", "/refreshtokens", "/students/signup", "/students/signin", "/students/forgotpassword", "/images"} // Current request path requestPath := r.URL.Path // Check if the request does not need authentication, serve the request if it doesn't need it for _, value := range notAuth { if value == requestPath { next.ServeHTTP(w, r) return } }那么我怎样才能把这个URL放入数组中,这样它就可以逃脱JWT授权呢?2)这就是我公开文件夹的方式,但我不想要这样。router.PathPrefix("/images").Handler(http.StripPrefix("/images", http.FileServer(http.Dir("./web/"))))我想要的是类似的东西router.Handle("/image/{imageName}",func(w http.ResponseWriter, request *http.Request){http.ServeFile(this image name file)})这样我就可以发回所请求的文件。任何帮助将不胜感激。
1 回答
白衣非少年
TA贡献1155条经验 获得超0个赞
对于#1:显然请求路径不是notAuth
. notAuth
也许您需要检查路径是否具有包含在?中的前缀。如果是这样,你需要小心/
,因为它会通过所有路径。如果没有,记录请求路径并查看问题所在。
对于#2:你应该能够做到:
http.ServeFile(w,request,filepath.Join(baseDir,mux.Vars(request)["imageName"])
- 1 回答
- 0 关注
- 106 浏览
添加回答
举报
0/150
提交
取消