Node-redis: Rückruf für xadd

Erstellt am 1. Nov. 2019  ·  8Kommentare  ·  Quelle: NodeRedis/node-redis

Hallo,

Gibt es eine Möglichkeit, einen Rückruf für xadd zu erhalten?

redisClient.xadd(streamName, '*',....,function(err,resp){
console.log(resp);
});

Ich habe es versucht und hatte Fehler.

Vielen Dank!
Mike

question

Alle 8 Kommentare

@ mikeslim7 das existiert. Können Sie bitte echten Code posten (stattdessen .... ), da ich denke, dass es nur ein kleiner Fehler sein könnte.

Ich habe einen Fehler als Anruf

redisClient.xadd('mystream', '*', 'field1', 'm1', function (err) {
});

{ ReplyError: ERR unknown command `xadd`, with args beginning with: `mystream`, `*`, `field1`, `m1`, 
    at parseError (/home/work/node_modules/redis-parser/lib/parser.js:193:12)
    at parseType (/home/work/node_modules/redis-parser/lib/parser.js:303:14)
  command: 'XADD',
  args: [ 'mystream', '*', 'field1', 'm1' ],
  code: 'ERR' }

@protectedvar Sie haben eine Version von Redis, die keine Streams unterstützt (unabhängig von diesem Problem).

@stockholmux Unterstützt v2.8.0 xadd callback?

@gcobcqwe Ja.

Ich habe das gleiche Problem mit der neuesten Version node_redis (2.8.0?). Ich habe auch versucht, den Hauptzweig direkt zu verwenden, wobei derselbe Fehler ausgelöst wird.

Der folgende Code wird nicht ausgeführt.

const rdb = redis.createClient("redis://localhost:6379");
const send = promisify(rdb.sendCommand).bind(rdb);
const n = {forename: "foo", lastname: "bar"};
send(`XADD nameStream * ${JSON.stringify(n)}`).catch(e => console.error(e));

ReplyError: ERR unbekannter Befehl xadd namestream * {"forename":"foo","lastname":"bar"} , mit Argumenten beginnend mit:
at parseError (/Users/hendrik/git/ownprojects/databroker/node_modules/redis-parser/lib/parser.js:193:12)
at parseType (/Users/hendrik/git/ownprojects/databroker/node_modules/redis-parser/lib/parser.js:303:14) {
Befehl: 'XADD NAMESTREAM * {"FORENAME": "FOO", "LASTNAME": "BAR"}',
Code: 'ERR'
}}

Hey, @hbel. Ich denke dein Format ist falsch.
XADD mystream * field1 value1 field2 value2 field3 value3
https://redis.io/commands/xadd

Der hier veröffentlichte Fehler zeigt an, dass der Fehler direkt vom Redis- Server und nicht vom Client kam. Daher schließe ich dieses Problem.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

juriansluiman picture juriansluiman  ·  3Kommentare

shmendo picture shmendo  ·  6Kommentare

lemon707 picture lemon707  ·  3Kommentare

michaelwittig picture michaelwittig  ·  3Kommentare

aletorrado picture aletorrado  ·  6Kommentare