我正在尝试从http://freemusicarchive.org下载曲目。一般来说,您可以通过将 /download 附加到轨道 URL 来下载文件,该 URL 会通过重定向到 S3 上的资产来响应。
例如,试试这个链接: http: //freemusicarchive.org//music//Zola_Jesus//Live_at_WFMU_on_Scott_McDowells_Show_1709//Odessa/download
要查看重定向,请将链接放在这里: http: //www.wheregoes.com/retracer.php
我可以使用如下所示的代码获取重定向位置:
req, err := http.NewRequest("GET", url, nil)
errHndlr(err)
transport := http.Transport{}
resp, err := transport.RoundTrip(req)
defer resp.Body.Close()
errHndlr(err)
redirect := resp.Header.Get("Location")
我已经通过将重定向链接打印到控制台并将其复制/粘贴到浏览器中来验证重定向链接是否有效,但是当我在同一个 url 上调用 http.Get 时,我从 AWS 收到“SignatureDoesNotMatch”错误。
如果有人可以提供有关这里出了什么问题的见解,我将不胜感激。