Jak zezwolić na pobieranie plików binarnych przy użyciu interfejsu API GRAPE
Chcę zezwolić na pobieranie pliku binarnego (pliku .p12) za pomocą Grape API Rubiego. Właśnie to próbuję.
get '/download_file' do
pkcs12 = generate_pkcsfile
content_type('application/octet-stream')
body(pkcs12.der)
end
Odpowiednim kodem za pomocą ActionController jest
begin
pkcs12 = generate_pkcsfile
send_data(pkcs12.der,
:filename => 'filename.p12')
end
Problem polega na tym, że plik pobrany za pomocą interfejsu API wydaje się być plikiem tekstowym z prefiksem „fffd ”osadzonym dla każdego znaku, podczas gdy plik pobrany za pomocą przeglądarki wydaje się być plikiem binarnym. Jak używać struktury API GRAPE, aby umożliwić pobieranie tego samego pliku, który jest pobierany przez send_data ActionController