我正在尝试使用 curl 获取 Redmine 的甘特图 PNG 导出副本。似乎 HTTP Basic Auth 不允许我访问它并且发出的每个请求都返回“HTTP/1.1 406 Not Acceptable”
curl -u <user>:<pw> -H 'Accept: image/png' -v http://redmine/projects/devprocess/issues/gantt.png
如果我将 URL 放入未登录 Redmine 的浏览器中,我会得到同样的结果(不过是一个空白窗口)...所以我假设它与身份验证有关。有没有办法“登录”到 Redmine 并通过 curl 保持一致的 session ,以便我可以下载这个 PNG 文件?
注意:最终解决方案是一个 Ruby 脚本,所以我也接受 Ruby 答案。 Curl 只是“最小公分母”客户端。
最佳答案
最终在 app/controllers/gantts_controller.rb
中执行此操作:
class GanttsController < ApplicationController
menu_item :gantt
before_filter :find_optional_project
+ accept_api_auth :show
似乎有效。最终我会以某种方式将它添加到插件中。
关于http - 使用 Curl 下载 Redmine 甘特图 PNG?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708876/