Database Reference
In-Depth Information
Die Changes-API gibt es in drei Varianten: Polling, Long-Polling und kontinu-
ierlich. Wir werden alle drei nacheinander besprechen. Wie immer beginnen
wir mit cURL, um dem Kern möglichst nah zu kommen, und lassen darauf
einen programmatischen Ansatz folgen.
Changes und cURL
Den ersten und einfachsten Weg, um auf die Changes-API zuzugreifen, bildet
das Polling-Interface. Wechseln Sie in die Kommandozeile und geben Sie Fol-
gendes ein (wir haben die Ausgabe etwas gekürzt; bei Ihnen wird das anders
aussehen):
$
curl http://localhost:5984/music/
_
changes
{
"results":[{
"seq":1,
"id":"370255",
"changes":[{"rev":"1-a7b7cc38d4130f0a5f3eae5d2c963d85"}]
},{
"seq":2,
"id":"370254",
"changes":[{"rev":"1-2c7e0deec3ffca959ba0169b0e8bfcef"}]
},{
... 97 more records ...
},{
"seq":100,
"id":"357995",
"changes":[{"rev":"1-aa649aa53f2858cb609684320c235aee"}]
}],
"last
_
seq":100
}
Wenn Sie einen
GET
-Request ohne Parameter an
_
changes
senden, antwortet
CouchDB mit allem, was es hat. Genau wie beim Zugriff auf Views können Sie
einen
limit
-Parameter angeben, um nur eine Teilmenge der Daten anzufor-
dern, und wenn Sie
include
_
docs=true
anhängen, werden die vollständigen
Dokumente zurückgegeben.
Üblicherweise sind Sie nicht an allen Änderungen seit Anbeginn der Zeit in-
teressiert. Viel wahrscheinlicher ist, dass Sie die Änderungen sehen wollen,
die es seit der letzten Prüfung gegeben hat. Dazu nutzen Sie den
since
-
Parameter.
$
curl http://localhost:5984/music/
_
changes?since=99
{
"results":[{
"seq":100,
"id":"357995",
"changes":[{"rev":"1-aa649aa53f2858cb609684320c235aee"}]
}],
"last
_
seq":100
}