Ruby on rails 3.1 ICS文件的Amazon SES附件错误
我面临亚马逊SES服务的附件错误。正常的Ruby on rails 3.1 ICS文件的Amazon SES附件错误,ruby-on-rails-3.1,amazon-web-services,amazon-ses,Ruby On Rails 3.1,Amazon Web Services,Amazon Ses,我面临亚马逊SES服务的附件错误。正常的pdf或jpg文件已正确附加。但是当我附加一个.ics文件时,它是一个日历文件。我犯了这个错误 554 Transaction failed: Illegal filename 'file_name.ics' 我正在使用aws sesgem和rails 3.2.2 亚马逊有什么限制吗?我们如何才能要求他们允许我们的帐户使用这种mime类型?虽然并不接受每种mime类型,但内容类型text/calendar和扩展ics根据其各自的特点得到了适当的支持 不看
pdf
或jpg
文件已正确附加。但是当我附加一个.ics
文件时,它是一个日历文件。我犯了这个错误
554 Transaction failed: Illegal filename 'file_name.ics'
我正在使用aws ses
gem和rails 3.2.2
亚马逊有什么限制吗?我们如何才能要求他们允许我们的帐户使用这种mime类型?虽然并不接受每种mime类型,但内容类型text/calendar
和扩展ics
根据其各自的特点得到了适当的支持
不看它们的来源,我怀疑这最终会成为gem的一个限制(SES支持的MIME类型列表随着时间的推移而增加),并建议您给官方(awsrubygem)一个机会,现在,它应该为所有已经支持的AWS服务提供更加一致和适当维护的开发/使用体验
祝你好运 实际问题是电子邮件的内容类型为
multipart/mixed
,保存ics
文件的部分的内容类型为text/plain
,根据规定,text/plain
必须有扩展名txt,diff,text
。但在我的例子中,它有.ics
扩展
所以我必须改变这个代码
attachments["file_name.ics"] = @model.to_ical
对这个
attachments["file_name.ics"] = {:mime_type => 'text/calendar',
:content => @model.to_ical}
它解决了我的问题 非常感谢您提供有关
AWS SDK
的精彩提示。但就我而言,问题就不同了。我解决了它,在答案中张贴了解决方案。