2015-03-08 2 views
2

У меня есть функция для чтения содержимого AWS S3 'key'. Ключ JS file называется colorInfo. Я могу перейти к файлу с интерфейса S3, и я могу получить доступ к нему из оболочки python. После воссоздания шаги питона оболочки внутри функции и вставки функции в остальной части файла питона, он делает мне ошибку внутри отладки консоли Django, когда called--Boto AWS S3- «NoSuchKey», когда ключ действительно существует

'S3ResponseError: 404 Not Found' and: '<Error><Code>NoSuchKey</Code><Message>The specified key does not exist</Message<Key>http:/s3.amazonaws.com/org.gomoto.izmo/Colors/2014/ 
14ram/14ram1500tradesmanreg4a/colorInfo.js</Key>' 

«colorInfo.js» живет в '14ram1500tradesmanreg4a' key. У кого-нибудь есть понимание? Я могу предоставить более подробную информацию, если это может помочь кому угодно.

Спасибо!

ответ

3

Сообщение об ошибке верное. Запрошенный объект не существует, потому что вы запрашиваете неправильный объект. Читайте внимательно:

<Key>http:/s3.amazonaws.com/org.gomoto.izmo/Colors/2014/ 14ram/14ram1500tradesmanreg4a/colorInfo.js</Key> 

Это ключ, который только содержит путь и имя файла. Он не содержит ведро, или «http» или имя хоста.

Это значит, что вместо того, чтобы скачать http://s3.amazonaws.com/bucket/object, вы, кажется, ссылаетесь на http://s3.amazonaws.com/bucket/http:/s3.amazonaws.com/bucket/object. Похоже, в какой-то момент вы предоставляете полный URL-адрес, где вам следует предоставить только ключ.

+0

Так что я могу перейти к [http: /s3.amazonaws.com/org.gomoto.izmo/Colors/2014/ 14ram/14ram1500tradesmanreg4a/colorInfo.js] из моего веб-браузера не означает, что ключ доступен? Как мне получить доступ к этому файлу python из моего кода python? – Richael

+0

@Richael ** ключ ** для этого объекта 'Цвета/2014/...'. Это не 'http: // ...'. Вы получаете ошибку, потому что пытаетесь запросить неверный URL-адрес. Ключ * только * путь и имя файла. Тот факт, что ключ, указанный в ошибке, содержит постороннюю информацию, говорит о том, что вы не запрашиваете то, что вы намерены запрашивать с S3. –

+0

Спасибо за помощь Майкл. Мы исправили нашу ошибку – Richael

Смежные вопросы