为什么带有 url 的 Typhoeus 包含“#” returns 404 在 Heroku 中而不是在本地主机中?
Why does Typhoeus with a url containing "#" returns 404 in Heroku and not in localhost?
我正在测试这 2 个有效的 url
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2#ooid=BvMjVqcjoHdZBG6tTpXy8UkhB5_46U_c
运行 下面两个代码,第一个 returns 200 OK,但第二个 returns 404 仅在 heroku 中。甚至使用 URI.escape(url)
:
转义 url
request = Typhoeus::Request.new(url, followlocation: true)
request.on_headers do |response|
puts response.code
end
request.run
不知道这种行为。也许是#?
的一些转义问题
如果我将 # 稍微替换成 ?,就可以了
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2?ooid=BvMjVqcjoHdZBG6tTpXy8UkhB5_46U_c
谢谢
解决方案是将 heroku 中的 libcurl 更新为 cedar-14,正如 https://github.com/typhoeus/ethon/issues/93
所指出的
我正在测试这 2 个有效的 url
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2#ooid=BvMjVqcjoHdZBG6tTpXy8UkhB5_46U_c
运行 下面两个代码,第一个 returns 200 OK,但第二个 returns 404 仅在 heroku 中。甚至使用 URI.escape(url)
:
request = Typhoeus::Request.new(url, followlocation: true)
request.on_headers do |response|
puts response.code
end
request.run
不知道这种行为。也许是#?
的一些转义问题如果我将 # 稍微替换成 ?,就可以了
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2?ooid=BvMjVqcjoHdZBG6tTpXy8UkhB5_46U_c
谢谢
解决方案是将 heroku 中的 libcurl 更新为 cedar-14,正如 https://github.com/typhoeus/ethon/issues/93
所指出的