Hello, I got the following back from delayed_job:

    [Worker(XXXXXX pid:3720)] Class#XXXXXXX failed with
URI::InvalidURIError: bad URI(is not URI?):
https://s3.amazonaws.com/cline-local-dev/2/attachments/542/original/mac-os-x[1].jpeg?AWSAccessKeyId=xxxxxxxx&Expires=1295403309&Signature=xxxxxxx%3D
- 3 failed attempts

The way this URI comes from in my app is:

In my user_mailer I do:

      @comment.attachments.each do |a|
        attachments[a.attachment_file_name] =
open(a.authenticated_url()) {|f| f.read }
      end

Then in my attachments model:

      def authenticated_url(style = nil, expires_in = 90.minutes)
        AWS::S3::S3Object.url_for(attachment.path(style ||
attachment.default_style), attachment.bucket_name, :expires_in =>
expires_in, :use_ssl => attachment.s3_protocol == 'https')
      end

That being said, is there some type of URI.encode or parsing I can do
to prevent a valid URI (as I checked the URL works in my browser) for
erroring and killing delayed_job in rails 3?

Thank you!

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to