Używam oficjalnego klejnotu ruby AWS dla S3 i mam problem z użyciem metody "url_for" w plikach, które mają w sobie znaki specjalne (np. Przecinki, apostrofy). Używam najnowszy klejnot AWS-SDK dla Ruby i mój kod wygląda następująco:Znaki specjalne w pliku wpływającym na aws-sdk ruby gem url_for method
s3 = AWS::S3::new
bucket = s3.buckets[bucket]
object = bucket.objects[object_address]
object_url = object.url_for(:read, :expires => 60*60, :secure => true)
Obiekt jest uzyskiwanie znaleźć poprawnie, ale URL dostaję od url_for daje mi httpError: 404 Not Found błąd. Działa dobrze, jeśli nazwa pliku nie zawiera przecinków ani apostrofów.
Czy istnieje sposób radzenia sobie z tym bez konieczności ograniczania nazw plików w pierwszej kolejności?
Jak wygląda twój adres URL? – sarnold
Wymieniłem kilka części dla prywatności, ale to jest sedno tego. Zaczyna się od https również ... //mybucket.s3.amazonaws.com/mypathstuff/test%2Ctest.png?AWSAccessKeyId=MYACCESSKEY&Expires=1323005992&Signature=lettersandnumbers%2Bt2RtdCnBAA%3D –
Powyżej części, które zamieniłem, były "mybucket", "mypathstuff" "i" litery i numery ". Próbowałem kodowania/dekodowania adresu URL bez żadnych korzyści. –