gpt4 book ai didi

go - 如何在不同路径下运行此图像代理?

转载 作者:IT王子 更新时间:2023-10-29 02:02:28 25 4
gpt4 key购买 nike

我正在使用 https://github.com/willnorris/imageproxy代表用户获取和调整图像大小。默认应用程序有效,但我想将其与现有服务器集成并将路径更改为“/proxy/”,因为“/”将用于我的主应用程序。我也不想单独运行它,因为它实际上只是我需要的几行。我有:

p := imageproxy.NewProxy(nil, nil)
p.SignatureKey = []byte("secret key")
p.Timeout = 10 * time.Second

router := mux.NewRouter().StrictSlash(true)
router.NewRoute().Name("proxy").Methods("GET").Path("/proxy/").Handler(p)

server := &http.Server{
Addr: "127.0.0.1:8000",
Handler: router,
}

我收到每张图片的“404 页面未找到”。将其更改为:

server := &http.Server{
Addr: "localhost:8000",
Handler: p,
}

log.Fatal(server.ListenAndServe())

有效。是否可以更改路径?

最佳答案

使用http.StripPrefix在调用图像代理处理程序之前从请求路径中删除“/proxy”:

router.NewRoute().Name("proxy").Methods("GET").PathPrefix("/proxy/").Handler(http.StripPrefix("/proxy", p))

此外,使用 PathPrefix而不是“/proxy”下所有路径上的匹配路径。

关于go - 如何在不同路径下运行此图像代理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47736050/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com