У меня возникли проблемы с чтением файла с S3. Я хочу, чтобы иметь возможность загрузить ID3-теги удаленно, но с использованием открытого URI не работает, он дает мне следующую ошибку:ruby чтение файлов с S3 с открытым URI
ruby-1.8.7-p302 > c=TagLib2::File.new(open(URI.parse("http://recordtemple.com.s3.amazonaws.com/music/745/original/The%20Stranger.mp3?1292096514")))
TypeError: can't convert Tempfile into String
from (irb):8:in `initialize'
from (irb):8:in `new'
from (irb):8
Однако, если я скачать тот же файл и поместить его на моем рабочем столе (т. е. нет необходимости в открытом URI), он работает отлично.
c=TagLib2::File.new("/Users/momofwombie/Desktop/blah.mp3")
Есть ли что-то еще, что я должен делать, чтобы читать удаленный файл?
UPDATE: Я просто нашел эту ссылку, которая может объяснить немного, но, безусловно, должен быть какой-то способ сделать это ...
Read header data from files on remote server
, который будет работать, за исключением того, что мои метаданные выглядят пустыми. вам нужно предоставить свои собственные метаданные с помощью s3? это было бы прекрасно, поскольку мне не пришлось бы загружать его. благодаря – holden