Ich muss eine kontinuierliche Aufgabe in meinem ArangoDb ausführen, die Datenbank selbst hat die Sicherheit eingeschaltet. Wenn ich eine Aufgabe an den API-Endpunkt zu veröffentlichen, wird die Aufgabe registriert, aber dann auf dem Fehlerprotokoll bekomme ich folgende:Wie erteile ich eine Aufgabe, um eine Anfrage auszuführen?
JavaScript-Ausnahme in der Datei ‚undefined‘ bei 3,75: ArangoError 11:
verboten
Keine Überraschung ... Aber wie kann ich einen Benutzer aus dem @arangodb-Modul tatsächlich anmelden?
Nur für den Fall, hier ist der Code meiner Aufgabe:
function() {
const db = require('@arangodb').db;
db._useDatabase("foo");
db._query("LET now = DATE_NOW() FOR u IN wait FILTER now - u.time >= 300000 REMOVE {_key: u._key} IN wait");
}
Hallo, danke für die Antwort. Ich benutze nicht Foxx, wie ich sagte, und ich spring nicht von einer Datenbank zu einer anderen Datenbank. Da die Aufgabe in der foo-Datenbank veröffentlicht wird, wirkt sich meine Abfrage auf eine Sammlung dieser Datenbank aus. Ich benutze diese Funktion [link] (https://docs.arangodb.com/3.1/Manual/Appendix/JavaScriptModules/Tasks.html) –
Ah, als Sie das @ rangodb-Modul erwähnten, nahm ich an, dass es in Foxx war. Wenn Sie diesen Code von Node.js ausführen, haben Sie sich die [arangojs-Bibliothek] (https://github.com/arangodb/arangojs) angesehen, die vom ArangoDB-Team verwaltet wird? –
Ja David, ich betreibe meine Knoten-App auf arangojs. Ich versuche, die Aufgabenfunktion von arangoDb zu verwenden, der Link ist in meinem Kommentar oben. Diese Funktion bietet einen API-Endpunkt, an dem ich eine JS-Funktion veröffentlichen kann, die alle x Sekunden über Arangos internem V8 ausgeführt wird. Tatsache ist, dass ich keine Möglichkeit finde, diese Aufgabe für die Datenbank zu authentifizieren. Vielen Dank für Ihr Interesse. –