Как создать ресурс CKAN в RoR, предоставив строку с содержимым файла?
Это похоже на работающее решение командной строки (если я сохраню файл в файловой системе):
curl -H 'Authorization: <api_key>' 'https://demo.ckan.org/api/action/resource_create' --form upload=@file.csv --form package_id=<pck_id>
Учитывая, что у меня есть содержимое файла CSV в виде строки, как я могу загрузить его на сайт CKAN?
Вот код, который у меня есть сейчас, ресурс создан, но его содержимое кажется пустым.
http_client = HTTPClient.new
temp_file = Tempfile.open('csv_export_tmp_file')
temp_file.write(resource_content)
body = {
name: <filename>,
title: <filetitle>,
package_id: <package_id_here>,
description: <description>,
created: <created_at_time>,
upload: temp_file,
mimetype: 'text/csv',
resource_type: 'file',
format: 'csv'
}
response = http_client.post(resource_create_url, body, [['Authorization', api_key], ['Content-Type', 'multipart/form-data']])
temp_file.close
temp_file.unlink