Я пытаюсь вставить изображение из приложения Flex в Picasa Web через Google App Engine Sdk.Я хочу сделать простой urlfetch вместо клиентской библиотеки Python.Следующий код:
def Insert(self, sessionToken, album_or_uri, title, filename_or_handle):
result = urlfetch.fetch(url=album_or_uri,
method=urlfetch.POST,
follow_redirects=True,
payload=StringIO(filename_or_handle),
headers={'Authorization': 'AuthSub token="' + sessionToken + '"',
'Content-Length': str(len(filename_or_handle)),
'Content-Type': 'image/jpeg',
'Slug': title
})
Передача данных в «filename_or_handle» является изображением ByteArray.Однако это не удачно.Я понятия не имею, в чем проблема.Пожалуйста посоветуй.Спасибо.
Решение следующее:
def Insert(self, sessionToken, album_or_uri, title, filename_or_handle):
image = filename_or_handle.read()
contentLength = len(image)
result = urlfetch.fetch(url=album_or_uri,
method=urlfetch.POST,
follow_redirects=True,
payload=image,
headers={'Authorization': 'AuthSub token="' + sessionToken + '"',
'Content-Length': contentLength,
'Content-Type': 'image/jpeg',
'Slug': title
})
Спасибо, Джонсон.