Я настраиваю SAIO на VirtualBox и хочу проверить, как работает функция url temp для Swift.не может получить объект из swift tempurl
здесь является объектом, который я создал test.txt вызова под контейнером «testCon», вы можете увидеть содержание и быстрого список объект
[email protected]:~/bin$ curl -X GET -H 'X-Auth-Token: AUTH_tkba199b23eeec4998b7119d2c9c903216' http://127.0.0.1:8080/v1/AUTH_test/testCon/test.txt
this is a test
[email protected]:~/bin$ swift -A http://127.0.0.1:8080/auth/v1.0 -U test:tester -K testing list testCon
test.txt
я следую по ссылке (http://ceph.com/docs/master/radosgw/swift/tempurl/) для ключа настройки температуры для URL-адреса температура URL
[email protected]:~/bin$ curl -X POST -H 'X-Auth-Token: AUTH_tkba199b23eeec4998b7119d2c9c903216' -H 'X-Account-Meta-Temp-URL-Key: secret' http://127.0.0.1:8080/v1/AUTH_test/testCon/test.txt
<html><h1>Accepted</h1><p>The request is accepted for processing.</p></html>[email protected]:~/bin$
[email protected]:~/bin$ swift -A http://127.0.0.1:8080/auth/v1.0 -U test:tester -K testing post -m "Temp-URL-Key:secret"
и следовать примеру питона, чтобы сгенерировать временный URL ссылки
import hmac
from hashlib import sha1
from time import time
method = 'GET'
host = "http://127.0.0.1:8080"
duration_in_seconds = 300 # Duration for which the url is valid
expires = int(time() + duration_in_seconds)
path = '/v1/AUTH_test/testCon/test.txt'
key = 'secret'
hmac_body = '%s\n%s\n%s' % (method, expires, path)
hmac_body = hmac.new(key, hmac_body, sha1).hexdigest()
sig = hmac.new(key, hmac_body, sha1).hexdigest()
rest_uri = "{host}{path}?temp_url_sig={sig}&temp_url_expires={expires}".format(
host=host, path=path, sig=sig, expires=expires)
print rest_uri
но когда я поставил ссылку кли, всегда показывают: Нет такого файла или каталога
[email protected]:~/bin$ http://127.0.0.1:8080/v1/AUTH_test/testCon/test.txt?temp_url_sig=83fa35362613a18c2ca0b48203ccda61d2229daa&temp_url_expires=1439938672
[1] 6125
[email protected]:~/bin$ -bash: http://127.0.0.1:8080/v1/AUTH_test/testCon/test.txt?temp_url_sig=83fa35362613a18c2ca0b48203ccda61d2229daa: **No such file or directory**
может кто-нибудь помочь? Просьба представить несколько предложений для меня?
Спасибо, Миллион!
Спасибо! но я снова создаю ссылку, но я получил «swift @ swift-VirtualBox: ~/bin $ 401 Unauthorized: URL-адрес недействительной версии», что-то не так с отправкой X-Account-Meta-Temp-URL-ключа или неправильного пути выше питон? –
Вот кли, я пытаюсь: –
Я нашел, что конец python имеет строку изменения, и команда curl должна быть использована выше, тогда вы можете загрузить файл без 401. curl -L -o 'download.txt' 'https: //region-a.geo-1.objects.hpcloudsvc.com/v1/10846130789747/USERMETAFILE/10846130789747_xxxxxxxx?temp_url_sig = 10846130789747: AWHYVDR62M98H1JKE3W2: 92842990c61d1a063476a1e583a3dbef7d6c0ae0 & temp_url_expires = 1440012858 ' –