409 http ошибка в Couchbase Lite в PhoneGap на iOS
Я получаю 409 за действия PUT, POST и DELETE.
Я успешно создал базу данных и ОДИН РАЗ успешно поместил один документ. Я пробовал местные и "нормальные" документы. Я не уделяю внимания пересмотрам, но думаю, что это связано с этим. Я только хочу сохранить и обновить эту строку JSON в моем приложении - вот и все.
Как будто я создал этот документ, чтобы остаться навсегда:-)
Поможет ли пример кода? Я действительно только использую Angular в $http.
На заметку: мне нужен механизм сохранения в phonegap, устойчивый к кешу html5.
1 ответ
Вы должны проверить, существует ли ваш документ, прежде чем обновлять его. Вот почему это сработало в первый раз, а не во второй.
config.db.get( "myDocumentID", function(error, doc) {
if (error) {
if (error.status == 404) {
//document does not exist insert it
config.db.put( "myDocumentID", myDocument, function(error,ok) {
if(error) { alert( "error" + JSON.stringify( error ) } else {
alert("success");
}
} )
} else {
alert( "error:" + JSON.stringify( error ) )
}
} else {
//update your document
doc.my_new_key = "value";
config.db.put( "myDocumentID", doc, function(error, ok) {
if( error ) { alert( "error:" + JSON.stringify( error ) ) } else {
alert("success");
}
} );
}
} )