Я генерирую один xml и сохраняю его в каком-то месте, скажем, myproject/media/doc.xml
Поскольку я новичок в erlang. Я знал, что мне нужно будет установить заголовки запросов, например
"Content-Disposition", "attachment; filename=\"" + Filename + "\""
Но я не знаю, как добиться этого с помощью ChicagoBoss. Я прошел по ссылкам:
Но до сих пор я не получил ясного представления о том, как это сделать. Что мы пытались сделать, так это:
download_xml('GET', [])->
Fun = fun (Socket, Transport) ->
Transport:sendfile(Socket, "/home/laxmikant/Desktop/demo.xml")
end,
Req2 = cowboy_req:set_resp_body_fun( F, Req),%% Req is available here
Req3 = cowboy_req:set_resp_header(<<"Content-Disposition">>, "GET", Req2),
Req4 = cowboy_req:set_resp_header(<<"attachment;filename=\"demo.xml\"">>, "GET", Req3),
Req5 = cowboy_req:set_resp_header(<<"Content-Length">>, "GET", Req4),
Req6 = cowboy_req:set_resp_header(<<"1024">>, "GET", Req5),
cowboy_req:reply(200, [
{<<"content-type">>, <<"application/octet-stream">>}
], "", Req6).
Но, похоже, объект запроса ChicagoBoss не соответствует Cowboy Req.
priv/static
. Это самое простое решение, не требующее настройки заголовков. В чем заключалась ваша проблема с этим решением? - person tkowal   schedule 21.01.2015priv/static/file.ext
, а затем наведете браузер на:http://yoursite/static/file.ext
, то CB автоматически установит заголовки для вас. Вам даже не нужно писать код контроллера. - person tkowal   schedule 21.01.2015