Я пытаюсь создать относительно простое приложение App Engine, которое ежедневно выбирает несколько страниц и отправляет данные на сервер CouchDB. В моем приложении App Engine есть следующий код (с библиотекой couchdb-python):
# post the result to CouchDB
price_data = {
'source': 'blah',
'date': str(result.headers['date'])
}
db.save(price_data)
db.put_attachment(price_data, file_one, 'prices_one.txt')
db.put_attachment(price_data, file_two, 'prices_two.txt')
file_one
и file_two
являются результатами предыдущих запросов urlfetch.
Теперь все это работает нормально, за исключением того, что первое вложение публикуется с price_data JSON ({ 'source': 'blah', 'date': 'date here'})
в начале текстового файла prices_one
, а второе вложение имеет префикс как JSON price_data
, так и всего *. 1011 * текстовый файл, за которым следует фактический prices_two.txt
файл.
Я уверен, что если бы я попытался добавить третье вложение, он бы опубликовал все накопленные данные в этом.
Если я захожу на CouchDB, чтобы посмотреть файл в БД, это полный файл, просто с { 'source': 'blah', 'date': 'date here'}
в самом начале.
Есть идеи, что может заставить App Engine повторную отправку предыдущих данных с каждым новым HTTP POST? Кроме того, я должен отметить, что до того, как я начал использовать библиотеку couchdb-python, он делал то же самое, так что, похоже, это что-то связанное с App Engine, чего я не понимаю.