Friday 28 April 2017

Createreadstream Binäre Optionen

Ich habe einen Puffer aus einem base64 enconded Bild erstellt. Ich versuche, mit POST an einen Dienst mit fs. createReadStream (..) zu senden. (Anforderung (..)), aber erhalten Sie die folgende Fehlermeldung: fs. createReadStream () nimmt entweder einen String oder einen Puffer. Wenn es ein String ist, dann wird erwartet, dass es sich um einen Pfad zu einer Datei handelt. Es scheint mir, dass fs. createReadStream () versucht, das Argument als Zeichenfolge zu lösen, die einen Pfad enthält, obwohl es sich um einen Puffer handelt. Ist das ein Fehler in Nodes Buffer API vielleicht habe ich einen Node-Service mit Restify gebaut. Dieser Dienst hat einen Endpunkt, der ein Subjekt, eine Nachricht, einen Namen und eine base64-codierte Bilddatei (jpg, png usw.) enthält. Nun wollen wir den Inhalt der Datei an einen Drittanbieterdienst mit JavaScript in Node schicken. Wenn ich oben auf diesem gelesen habe, gibt es einige Quellen, die sagen, daß ich einen lesbaren Strom mit einem Puffer-Gegenstand verursachen und es zur Anfrage senden sollte, die es zum Drittdienst sendet. Aus diesem Grund erstelle ich einen Puffer aus meinem base64-codierten Bild und sende ihn als Argument an fs. createReadStream, das ich dann zu einem Request-Objekt pfeife. Danach sollte ich in der Lage sein, einen lesbaren Stream aus einem Buffer zu erstellen: nodejs. org/api/fsfsfscreatereadstreampathions Und dementsprechend sollte ich das Anforderungsmodul verwenden können, um den Puffer auf eine POST-Anforderung zu routen: www. npmjs / Paket / Anfrage Zitat aus dem Anforderungsmodul docs: Sie können auch eine Datei auf eine PUT - oder POST-Anforderung streamen. Diese Methode überprüft auch die Dateierweiterung gegen eine Zuordnung von Dateierweiterungen zu Inhaltstypen (in diesem Fall application / json) und verwendet den richtigen Inhaltstyp in der PUT-Anforderung (wenn die Header nicht bereits eine bereitstellen).Node. js V6.7.0 Dokumentation Inhaltsverzeichnis File System File I / O wird durch einfache Wrapper um Standard-POSIX-Funktionen bereitgestellt. Um dieses Modul zu verwenden, benötigen Sie (39fs39). Alle Methoden haben asynchrone und synchrone Formulare. Das asynchrone Formular nimmt immer ein Abschlussrückruf als sein letztes Argument. Die Argumente, die an den Abschluss-Rückruf übergeben werden, hängen von der Methode ab, aber das erste Argument ist immer für eine Ausnahme reserviert. Wenn die Operation erfolgreich abgeschlossen wurde, wird das erste Argument null oder undefiniert. Bei Verwendung des Synchronformulars werden Ausnahmen sofort ausgelöst. Sie können try / catch verwenden, um Ausnahmen zu behandeln oder sie zu sprudeln. Hier ist ein Beispiel für die asynchrone Version: Hier ist die synchrone Version: Bei den asynchronen Methoden gibt es keine garantierte Bestellung. Das folgende ist anfällig für Fehler: Es könnte sein, dass fs. stat vor fs. rename ausgeführt wird. Der richtige Weg, dies zu tun, ist die Kette der Rückrufe. Bei stark frequentierten Prozessen wird der Programmierer stark ermutigt, die asynchronen Versionen dieser Aufrufe zu verwenden. Die synchronen Versionen blockieren den gesamten Prozess, bis sie abgeschlossen sind - und stoppen alle Verbindungen. Der relative Pfad zu einem Dateinamen kann verwendet werden. Beachten Sie jedoch, dass dieser Pfad relativ zu process. cwd () ist. Die meisten fs-Funktionen lassen Sie das Callback-Argument weglassen. Wenn Sie dies tun, wird ein Standardrückruf verwendet, der Fehler erneut ausführt. Um einen Trace für die ursprüngliche Call-Site zu erhalten, setzen Sie die Umgebungsvariable NODEDEBUG: Puffer API fs-Funktionen unterstützen Passing - und Empfangspfade sowohl als Strings als auch als Puffer. Letzteres soll es ermöglichen, mit Dateisystemen zu arbeiten, die nicht UTF-8-Dateinamen zulassen. Für die meisten typischen Verwendungen wird das Arbeiten mit Pfaden als Buffers nicht erforderlich sein, da die Zeichenfolge-API automatisch zu und von UTF-8 konvertiert. Beachten Sie, dass Dateinamen auf bestimmten Dateisystemen (z. B. NTFS und HFS) immer als UTF-8 codiert werden. Auf solchen Dateisystemen funktioniert das Übergeben von nicht-UTF-8-codierten Buffers an fs-Funktionen nicht wie erwartet. Klasse: fs. FSWatcher Objekte, die von fs. watch () zurückgegeben werden, sind von diesem Typ. Der an fs. watch () übergebene Listener-Rückruf empfängt die zurückgegebenen FSWatcher-Änderungsereignisse. Das Objekt sendet diese Ereignisse aus: Ereignis: 39change39 Wird ausgesendet, wenn sich etwas in einem überwachten Verzeichnis oder einer Datei ändert. Weitere Informationen finden Sie unter fs. watch (). Das Dateinamenargument kann je nach Betriebssystemunterstützung nicht bereitgestellt werden. Wenn Dateiname angegeben wird, wird sie als Puffer bereitgestellt, wenn fs. watch () mit it39s encoding Option auf 39buffer39 gesetzt aufgerufen wird. Andernfalls ist filename ein String. Ereignis: 39error39 Wird ausgelöst, wenn ein Fehler auftritt. Watcher. close () Wird ausgesendet, wenn der zugrundeliegende Deskriptor des WriteStream 39s mit der fs. close () - Methode geschlossen wurde. WriteStream. bytesWritten Die Anzahl der bis dahin geschriebenen Bytes. Enthält keine Daten, die zum Schreiben noch in der Warteschlange stehen. WriteStream. path Der Pfad zu der Datei, in die der Stream geschrieben wird, wird wie im ersten Argument von fs. createWriteStream () angegeben. Wenn der Pfad als String übergeben wird, dann ist writeStream. path ein String. Wenn der Pfad als Puffer übergeben wird. Dann ist writeStream. path ein Puffer. Fs. access (Pfad, Modus, Rückruf) Hinzugefügt in: v0.11.15 Testet eine User39s-Berechtigung für die Datei oder das Verzeichnis, die durch den Pfad angegeben wird. Das Argument mode ist eine optionale Ganzzahl, die die durchzuführenden Zugänglichkeitsprüfungen angibt. Die folgenden Konstanten definieren die möglichen Werte des Modus. Es ist möglich, eine Maske zu erstellen, die aus dem bitweisen OR von zwei oder mehr Werten besteht. Fs. constants. FOK - Pfad ist für den aufrufenden Prozess sichtbar. Dies ist nützlich für die Bestimmung, ob eine Datei existiert, aber sagt nichts über rwx Berechtigungen. Standard, wenn kein Modus angegeben ist. Fs. constants. ROK - Pfad kann von dem aufrufenden Prozess gelesen werden. Fs. constants. WOK - Pfad kann durch den Aufruf geschrieben werden. Fs. constants. XOK - Pfad kann vom aufrufenden Prozess ausgeführt werden. Dies hat keine Auswirkungen auf Windows (verhalten sich wie fs. constants. FOK). Das letzte Argument, Rückruf. Ist eine Rückruffunktion, die mit einem möglichen Fehlerargument aufgerufen wird. Wenn eine der Barrierefreiheitsprüfungen fehlschlägt, wird das Fehlerargument gefüllt. Im folgenden Beispiel wird überprüft, ob die Datei / etc / passwd vom aktuellen Prozess gelesen und geschrieben werden kann. Verwenden Sie fs. access (), um die Zugänglichkeit einer Datei zu überprüfen, bevor Sie fs. open () aufrufen. Fs. readFile () oder fs. writeFile () wird nicht empfohlen. Dadurch wird eine Racebedingung eingeführt, da andere Prozesse den file39s-Zustand zwischen den beiden Aufrufe ändern können. Stattdessen sollte der Benutzer-Code öffnen / lesen / schreiben die Datei direkt und behandeln den Fehler, wenn die Datei nicht zugänglich ist. Schreiben (NICHT EMPFOHLEN) lesen (NICHT EMPFOHLEN) lesen Die empfohlenen Quot Beispiele oben überprüfen für die Zugänglichkeit und verwenden Sie dann die Datei die quotrecommendedquot Beispiele sind besser, weil sie die Datei direkt verwenden und behandeln den Fehler, wenn überhaupt. Überprüfen Sie grundsätzlich auf die Zugänglichkeit einer Datei nur, wenn die Datei nicht direkt verwendet wird, zum Beispiel wenn es sich um ein Signal eines anderen Prozesses handelt. Fs. accessSync (Pfad, Modus) Hinzugefügt in: v0.11.15 Synchrone Version von fs. access (). Dies wirft, wenn irgendwelche Zugänglichkeitsprüfungen fehlschlagen, und tut nichts anderes. Fs. appendFile (Datei, Daten, Optionen, Rückruf) Asynchrones Anhängen von Daten an eine Datei, Erstellen der Datei, wenn sie noch nicht existiert. Daten können ein String oder ein Puffer sein. Wenn options ein String ist, dann gibt er die Codierung an. Beispiel: Jeder angegebene Dateideskriptor muss zum Anhängen geöffnet worden sein. Hinweis: Wenn als Datei ein Dateideskriptor angegeben ist. Wird es nicht automatisch geschlossen. Fs. appendFileSync (Datei, Daten, Optionen) Die synchrone Version von fs. appendFile (). Rückgabewerte undefined. Fs. chmod (Pfad, Modus, Rückruf) Asynchronous chmod (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. chmodSync (Pfad, Modus) Synchronous chmod (2). Rückgabewerte undefined. Fs. chown (Pfad, uid, Gid, Rückruf) Asynchronous chown (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. chownSync (Pfad, uid, gid) Synchroner Chown (2). Rückgabewerte undefined. Fs. close (fd, Rückruf) Asynchronous close (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. closeSync (fd) Synchrones Schließen (2). Rückgabewerte undefined. Fs. constants Gibt ein Objekt zurück, das häufig verwendete Konstanten für Dateisystemoperationen enthält. Die derzeit definierten spezifischen Konstanten sind in FS-Konstanten beschrieben. Fs. createReadStream (Pfad, Optionen) Beachten Sie, dass der von dieser Methode zurückgegebene Stream im Gegensatz zum Standardwert für highWaterMark auf einem lesbaren Stream (16 kb) für denselben Parameter einen Standardwert von 64 kb hat. Options ist ein Objekt oder eine Zeichenfolge mit den folgenden Standardwerten: Optionen können Start - und Endwerte enthalten, um einen Bytebereich anstelle der gesamten Datei zu lesen. Sowohl Anfang als auch Ende sind inklusive und beginnen bei 0. Die Kodierung kann jeder von denen sein, die von Puffer akzeptiert werden. Wenn fd angegeben wird, ignoriert ReadStream das Pfadargument und verwendet den angegebenen Dateideskriptor. Dies bedeutet, dass kein Ereignis 39open39 ausgesendet wird. Beachten Sie, dass fd sollte blockieren nicht blockieren fd s sollte an net. Socket übergeben werden. Wenn autoClose false ist, dann wird der Dateideskriptor39 geschlossen, auch wenn there39s ein Fehler ist. Es ist Ihre Verantwortung, es zu schließen und sicherzustellen, dass there39s keine Datei descriptor Leck. Wenn autoClose auf true gesetzt ist (Standardverhalten), wird bei Fehler oder Ende der Dateideskriptor automatisch geschlossen. Modus setzt den Dateimodus (Permission und Sticky Bits), aber nur, wenn die Datei erstellt wurde. Ein Beispiel, um die letzten 10 Byte einer Datei zu lesen, die 100 Bytes lang ist: Wenn options eine Zeichenfolge ist, dann gibt sie die Codierung an. Fs. createWriteStream (Pfad, Optionen) Optionen ist ein Objekt oder eine Zeichenkette mit den folgenden Vorgaben: Optionen können auch eine Startoption enthalten, um das Schreiben von Daten an einer Stelle hinter dem Anfang der Datei zu ermöglichen. Das Ändern einer Datei anstatt sie zu ersetzen, erfordert möglicherweise einen Flaggenmodus von r anstelle des Standardmodus w. Die DefaultEncoding kann einer von denen sein, die von Buffer akzeptiert werden. Wenn autoClose auf true (Standardverhalten) bei Fehler oder Ende gesetzt wird, wird der Dateideskriptor automatisch geschlossen. Wenn autoClose falsch ist, dann wird der Dateideskriptor39 geschlossen, auch wenn es einen Fehler gibt. Es ist Ihre Verantwortung, es zu schließen und sicherzustellen, dass there39s keine Datei descriptor Leck. Wie ReadStream. Wenn fd angegeben wird, ignoriert WriteStream das Pfadargument und verwendet den angegebenen Dateideskriptor. Dies bedeutet, dass kein Ereignis 39open39 ausgesendet wird. Beachten Sie, dass fd sollte blockieren nicht blockieren fd s sollte an net. Socket übergeben werden. Wenn options ein String ist, dann gibt er die Codierung an. Fs. exists (path, callback) Hinzugefügt am: v0.0.2 Veraltet seit: v1.0.0 Testen Sie, ob der angegebene Pfad vorhanden ist, indem Sie mit dem Dateisystem überprüfen. Rufen Sie dann das Callback-Argument mit true oder false auf. Beispiel: Verwenden Sie fs. exists (), um die Existenz einer Datei zu überprüfen, bevor Sie fs. open () aufrufen. Fs. readFile () oder fs. writeFile () wird nicht empfohlen. Dadurch wird eine Racebedingung eingeführt, da andere Prozesse den file39s-Zustand zwischen den beiden Aufrufe ändern können. Stattdessen sollte der Benutzer-Code öffnen / lesen / schreiben die Datei direkt und behandeln den Fehler, wenn die Datei nicht vorhanden ist. Schreiben (NICHT EMPFOHLEN) lesen (NICHT EMPFOHLEN) lesen Die empfohlenen Quot Beispiele oben überprüfen für Existenz und verwenden Sie dann die Datei die quotrecommendedquot Beispiele sind besser, weil sie die Datei direkt verwenden und behandeln den Fehler, wenn überhaupt. Überprüfen Sie im Allgemeinen auf das Vorhandensein einer Datei nur, wenn die Datei nicht direkt verwendet wird, zum Beispiel wenn ihre Existenz ein Signal aus einem anderen Prozess ist. Fs. existsSync (path) Hinzugefügt am: v0.1.21 Veraltet seit: v1.0.0 Synchrone Version von fs. exists (). Gibt true zurück, wenn die Datei existiert, andernfalls false. Fs. fchmod (fd, mode, callback) Asynchroner fchmod (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. fchmodSync (fd, mode) Synchrone fchmod (2). Rückgabewerte undefined. Fs. fchown (fd, uid, gid, callback) Asynchrones fchown (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. fchownSync (fd, uid, gid) Synchronous fchown (2). Rückgabewerte undefined. Fs. fdatasync (fd, Rückruf) Asynchronous fdatasync (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. fdatasyncSync (fd) Synchronous fdatasync (2). Rückgabewerte undefined. Fs. fstat (fd, Rückruf) Asynchronous fstat (2). Der Rückruf erhält zwei Argumente (err, stats), wobei stats ein fs. Stats-Objekt ist. Fstat () ist identisch mit stat (). Außer daß die Datei, die stat-ed ist, durch den Dateideskriptor fd spezifiziert wird. Fs. fstatSync (fd) Synchronous fstat (2). Gibt eine Instanz von fs. Stats zurück. Fsfsync (fd, Rückruf) Asynchronous fsync (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. fsyncSync (fd) Synchronous fsync (2). Rückgabewerte undefined. Fs. ftruncate (fd, len, callback) Asynchrones ftruncate (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Wenn die Datei, auf die sich der Dateideskriptor bezieht, größer als len Bytes ist, werden nur die ersten len Bytes in der Datei beibehalten. Beispielsweise behält das folgende Programm nur die ersten vier Bytes der Datei bei, wenn die Datei zuvor kürzer als len Bytes war, wird sie erweitert und der erweiterte Teil mit Nullbytes (39039) gefüllt. Zum Beispiel sind die letzten drei Bytes Null-Bytes (39039), um die Übertrunkierung zu kompensieren. Fs. ftruncateSync (fd, len) fd ltIntegergt len ​​ltIntegergt default 0 Synchronous ftruncate (2). Rückgabewerte undefined. Fs. futimes (fd, atime, mtime, callback) Ändern Sie die Dateizeitstempel einer Datei, auf die der angegebene Dateideskriptor verweist. Fs. futimesSync (fd, atime, mtime) fd ltIntegergt atime ltIntegergt mtime ltIntegergt Synchrone Version von fsfutimes (). Rückgabewerte undefined. Fs. lchmod (Pfad, Modus, Rückruf) Veraltet seit: v0.4.7 Asynchronous lchmod (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Nur unter Mac OS X verfügbar. Fs. lchmodSync (Pfad, Modus) Veraltet seit: v0.4.7 Synchronous lchmod (2). Rückgabewerte undefined. Fs. lchown (Pfad, uid, gid, callback) Veraltet seit: v0.4.7 Asynchronous lchown (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. lchownSync (Pfad, uid, gid) Veraltet seit: v0.4.7 Synchronous lchown (2). Rückgabewerte undefined. Fs. link (srcpath, dstpath, callback) Asynchroner Link (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. linkSync (srcpath, dstpath) Synchroner Link (2). Rückgabewerte undefined. Fs. lstat (Pfad, Rückruf) Asynchronous lstat (2). Der Rückruf erhält zwei Argumente (err, stats), wobei stats ein fs. Stats-Objekt ist. Lstat () ist identisch mit stat (). Außer, dass, wenn Pfad eine symbolische Verknüpfung ist, dann die Verknüpfung selbst ist stat-ed, nicht die Datei, auf die es verweist. Fs. lstatSync (Pfad) Synchronous lstat (2). Gibt eine Instanz von fs. Stats zurück. Fs. mkdir (Pfad, Modus, Rückruf) Asynchronous mkdir (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Modus auf 0o777. Fs. mkdirSync (Pfad, Modus) Synchronous mkdir (2). Rückgabewerte undefined. Fs. mkdtemp (Präfix, Optionen, Rückruf) Erstellt ein eindeutiges temporäres Verzeichnis. Erzeugt sechs zufällige Zeichen, die hinter einem erforderlichen Präfix angehängt werden, um ein eindeutiges temporäres Verzeichnis zu erstellen. Der erstellte Ordnerpfad wird als String an den zweiten Parameter callback39s übergeben. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die zu verwendende Zeichencodierung angibt. Hinweis . Die fs. mkdtemp () - Methode fügt die sechs zufällig ausgewählten Zeichen direkt an die Präfixzeichenfolge an. Zum Beispiel, wenn ein Verzeichnis / tmp. Wenn es darum geht, ein temporäres Verzeichnis innerhalb von / tmp zu erstellen. Muss das Präfix mit einem nachlaufenden plattformspezifischen Trennzeichen enden (require (39path39).sep). Fs. mkdtempSync (Präfix, Optionen) Die synchrone Version von fs. mkdtemp (). Gibt den erstellten Ordnerpfad zurück. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die zu verwendende Zeichencodierung angibt. Fs. open (Pfad, Flags, Modus, Rückruf) Asynchrone Datei geöffnet. Siehe offen (2). Flags können sein: 39r39 - Datei zum Lesen öffnen. Eine Ausnahme tritt auf, wenn die Datei nicht vorhanden ist. 39r39 - Datei zum Lesen und Schreiben öffnen. Eine Ausnahme tritt auf, wenn die Datei nicht vorhanden ist. 39rs39 - Datei zum Lesen und Schreiben im Synchronmodus öffnen. Weist das Betriebssystem an, den lokalen Dateisystemcache zu umgehen. Dies ist vor allem für das Öffnen von Dateien auf NFS-Mounts nützlich, da es Ihnen ermöglicht, den potentiell veralteten lokalen Cache zu überspringen. Es hat eine sehr reale Auswirkung auf I / O Leistung so don39t Gebrauch diese Markierungsfahne, es sei denn Sie sie benötigen. Beachten Sie, dass dies doesn39t fs. open () in einen synchronen blockierenden Anruf umwandelt. Wenn that39s, was Sie wollen, dann sollten Sie mit fs. openSync () 39w39 - Open-Datei zum Schreiben. Die Datei wird erstellt (falls nicht vorhanden) oder abgeschnitten (falls vorhanden). 39wx39 - Wie 39w39 aber schlägt fehl, wenn Pfad vorhanden ist. 39w39 - Datei zum Lesen und Schreiben öffnen. Die Datei wird erstellt (falls nicht vorhanden) oder abgeschnitten (falls vorhanden). 39wx39 - Wie 39w39 aber schlägt fehl, wenn Pfad vorhanden ist. 39a39 - Datei zum Anhängen öffnen. Die Datei wird erstellt, wenn sie nicht existiert. 39ax39 - wie 39a39 aber scheitert, wenn Pfad vorhanden ist. 39a39 - Datei zum Lesen und Anhängen öffnen. Die Datei wird erstellt, wenn sie nicht existiert. 39ax39 - wie 39a39 aber scheitert, wenn Pfad vorhanden ist. Modus setzt den Dateimodus (Permission und Sticky Bits), aber nur, wenn die Datei erstellt wurde. Es ist standardmäßig auf 0666. lesbar und beschreibbar. Der Rückruf erhält zwei Argumente (err, fd). Das exklusive Flag 39x39 (OEXCL-Flag in open (2)) stellt sicher, dass der Pfad neu erstellt wird. Bei POSIX-Systemen wird der Pfad als vorhanden angesehen, auch wenn er ein Symlink zu einer nicht vorhandenen Datei ist. Das exklusive Flag funktioniert möglicherweise mit Netzwerkdateisystemen. Flags können auch eine Zahl sein, wie durch offene (2) häufig verwendete Konstanten von fs. constants dokumentiert. Unter Windows werden Flags zu ihren Äquivalenten, sofern zutreffend, übersetzt, z. B. EIGENSCHAFT zu FILEGENERICWRITE. Oder OEXCLOCREAT an CREATENEW. Wie von CreateFileW akzeptiert. Unter Linux funktionieren Positionsschreibweisen nicht, wenn die Datei im Append-Modus geöffnet wird. Der Kernel ignoriert das Positionsargument und fügt die Daten immer an das Ende der Datei an. Hinweis: Das Verhalten von fs. open () ist für bestimmte Flags plattformspezifisch. Als solches wird das Öffnen eines Verzeichnisses auf OS X und Linux mit dem Flag 39a39 - siehe Beispiel unten - einen Fehler zurückgeben. Im Gegensatz dazu wird unter Windows und FreeBSD ein Dateideskriptor zurückgegeben. Fs. openSync (Pfad, Flags, Modus) Synchrone Version von fs. open (). Gibt eine Ganzzahl zurück, die den Dateideskriptor repräsentiert. Fs. read (fd, Puffer, Offset, Länge, Position, Rückruf) Daten aus der von fd spezifizierten Datei lesen. Puffer ist der Puffer, in den die Daten geschrieben werden. Offset ist der Offset im Puffer, um mit dem Schreiben zu beginnen. Length ist eine Ganzzahl, die die Anzahl der zu lesenden Bytes angibt. Position ist eine Ganzzahl, in der angegeben wird, wo in der Datei gelesen werden soll. Wenn Position Null ist. Werden die Daten aus der aktuellen Dateiposition gelesen. Der Rückruf erhält die drei Argumente (err, bytesRead, buffer). Fs. readdir (Pfad, Optionen, Rückruf) Asynchronous readdir (3). Liest den Inhalt eines Verzeichnisses. Der Rückruf erhält zwei Argumente (err, files), wobei files ein Array der Namen der Dateien im Verzeichnis exklusive 39.39 und 39..39 sind. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die Zeichencodierung angibt, die für die an den Callback übergebenen Dateinamen verwendet wird. Wenn die Codierung auf 39buffer39 gesetzt ist. Werden die zurückgegebenen Dateinamen als Pufferobjekte übergeben. Fs. readdirSync (Pfad, Optionen) Synchrones Lesedir (3). Gibt ein Array von Dateinamen außer 39.39 und 39..39 zurück. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die Zeichencodierung angibt, die für die an den Callback übergebenen Dateinamen verwendet wird. Wenn die Codierung auf 39buffer39 gesetzt ist. Werden die zurückgegebenen Dateinamen als Pufferobjekte übergeben. Fs. readFile (Datei, Optionen, Rückruf) Asynchron liest den gesamten Inhalt einer Datei. Beispiel: Der Rückruf erfolgt über zwei Argumente (err, data). Wobei data der Inhalt der Datei ist. Wenn keine Codierung angegeben ist, wird der Rohpuffer zurückgegeben. Wenn options ein String ist, dann gibt er die Codierung an. Beispiel: Jeder angegebene Dateideskriptor muss das Lesen unterstützen. Hinweis: Wenn als Datei ein Dateideskriptor angegeben ist. Wird es nicht automatisch geschlossen. Fs. readFileSync (Datei, Optionen) Synchrone Version von fs. readFile. Gibt den Inhalt der Datei zurück. Wenn die Codierungsoption angegeben ist, gibt diese Funktion einen String zurück. Ansonsten gibt es einen Puffer zurück. Fs. readlink (Pfad, Optionen, Rückruf) Asynchronous Link (2). Der Rückruf erhält zwei Argumente (err, linkString). Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die Zeichencodierung angibt, die für den Linkpfad verwendet wird, der an den Rückruf übergeben wird. Wenn die Codierung auf 39buffer39 gesetzt ist. Wird der zurückgegebene Linkpfad als Pufferobjekt übergeben. Fs. readlinkSync (Pfad, Optionen) Synchroner Leselink (2). Gibt den symbolischen Link39s-Zeichenfolgenwert zurück. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die Zeichencodierung angibt, die für den Linkpfad verwendet wird, der an den Rückruf übergeben wird. Wenn die Codierung auf 39buffer39 gesetzt ist. Wird der zurückgegebene Linkpfad als Pufferobjekt übergeben. Fs. readSync (fd, Puffer, Offset, Länge, Position) Synchrone Version von fs. read (). Gibt die Anzahl BytesRead zurück. Fs. realpath (Pfad, Optionen, Rückruf) Asynchronous realpath (3). Der Rückruf erhält zwei Argumente (err, resolvedPath). Kann process. cwd verwenden, um relative Pfade zu lösen. Es werden nur Pfade unterstützt, die in UTF8-Strings konvertiert werden können. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, das die Zeichencodierung angibt, die für den an den Callback übergebenen Pfad verwendet wird. Wenn die Codierung auf 39buffer39 gesetzt ist. Wird der zurückgegebene Pfad als Pufferobjekt übergeben. Fs. realpathSync (Pfad, Optionen) Synchroner realer Pfad (3). Gibt den aufgelösten Pfad zurück. Es werden nur Pfade unterstützt, die in UTF8-Strings konvertiert werden können. Das optionale Optionsargument kann ein String sein, der eine Codierung angibt, oder ein Objekt mit einer Codierungseigenschaft, die die für den zurückgegebenen Wert zu verwendende Zeichencodierung angibt. Wenn die Codierung auf 39buffer39 gesetzt ist. Wird der zurückgegebene Pfad als Pufferobjekt übergeben. Fs. rename (oldPath, newPath, callback) Asynchroner Umbenennen (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. renameSync (oldPath, newPath) Synchronous Umbenennen (2). Rückgabewerte undefined. Fs. rmdir (Pfad, Rückruf) Asynchronous rmdir (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. rmdirSync (Pfad) Synchronous rmdir (2). Rückgabewerte undefined. Fs. stat (Pfad, Rückruf) Asynchronous stat (2). Der Rückruf erhält zwei Argumente (err, stats), wobei stats ein fs. Stats-Objekt ist. Weitere Informationen finden Sie im Abschnitt fs. Stats. Fs. statSync (Pfad) Synchronstatus (2). Gibt eine Instanz von fs. Stats zurück. Fs. symlink (Ziel, Pfad, Typ, Rückruf) Asynchronous symlink (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Das Argument Typ kann auf 39dir39 gesetzt werden. 39file39. Oder 39junction39 (Standard ist 39file39) und ist nur unter Windows verfügbar (auf anderen Plattformen ignoriert). Beachten Sie, dass Windows-Abzweigungspunkte den Zielpfad als absolut erfordern. Bei Verwendung von 39junction39. Wird das Zielargument automatisch auf den absoluten Pfad normiert. Hier ein Beispiel: Es wird ein symbolischer Link namens quotnew-portquot erstellt, der auf quotfooquot verweist. Fs. symlinkSync (Ziel, Pfad, Typ) Synchroner Symlink (2). Rückgabewerte undefined. Fs. truncate (Pfad, len, Rückruf) Asynchronous truncate (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Als erstes Argument kann auch ein Dateideskriptor übergeben werden. In diesem Fall wird fs. ftruncate () aufgerufen. Fs. truncateSync (Pfad, len) Synchronous truncate (2). Rückgabewerte undefined. Als erstes Argument kann auch ein Dateideskriptor übergeben werden. In diesem Fall wird fs. ftruncateSync () aufgerufen. Fs. unlink (Pfad, Rückruf) Asynchronous unlink (2). Dem Abschlussrückruf werden keine anderen Argumente als eine mögliche Ausnahme übergeben. Fs. unlinkSync (Pfad) Synchronous Unlink (2). Rückgabewerte undefined. Fs. unwatchFile (Dateiname, Listener) Stoppen Sie, auf Änderungen am Dateinamen zu achten. Wenn Listener angegeben ist, wird nur dieser bestimmte Listener entfernt. Andernfalls werden alle Zuhörer entfernt und Sie haben den Dateinamen effektiv beendet. Das Aufrufen von fs. unwatchFile () mit einem Dateinamen, der nicht beobachtet wird, ist ein no-op, kein Fehler. Hinweis: fs. watch () ist effizienter als fs. watchFile () und fs. unwatchFile (). Fs. watch () sollte statt fs. watchFile () und fs. unwatchFile () verwendet werden, wenn möglich. Fs. utimes (path, atime, mtime, callback) Ändert die Zeitstempel der Datei, auf die der angegebene Pfad verweist. Anmerkung: Die Argumente atime und mtime der folgenden verwandten Funktionen folgen den folgenden Regeln: Wenn der Wert ein numerierbarer String wie 3912345678939 ist, würde der Wert in die entsprechende Zahl konvertiert werden. Wenn der Wert NaN oder Infinity ist. Würde der Wert auf Date. now () konvertiert werden. Fs. utimesSync (Pfad, atime, mtime) Synchrone Version von fs. utimes (). Rückgabewerte undefined. Fswatch (Dateiname, Optionen, Listener) Dateiname ltStringgt ltBuffergt Optionen ltStringgt ltObjectgt persistent ltBooleangt Gibt an, ob der Prozess weiterhin ausgeführt werden soll, solange Dateien überwacht werden. Default true rekursive ltBooleangt Gibt an, ob alle Unterverzeichnisse oder nur das aktuelle Verzeichnis überwacht werden sollen. Dies trifft zu, wenn ein Verzeichnis angegeben ist und nur auf unterstützten Plattformen (siehe Caveats). Default false encoding ltStringgt Gibt die Zeichenkodierung an, die für den an den Listener übergebenen Dateinamen verwendet wird. Default 39utf839 listener ltFunctiongt Watch auf Änderungen am Dateinamen. Wobei Dateiname entweder eine Datei oder ein Verzeichnis ist. Das zurückgegebene Objekt ist ein fs. FSWatcher. Das zweite Argument ist optional. Wenn options als Zeichenfolge angegeben wird, gibt sie die Codierung an. Andernfalls sollten Optionen als Objekt übergeben werden. Der Listener-Callback erhält zwei Argumente (eventType, filename). EventType ist entweder 39rename39 oder 39change39. Und filename ist der Name der Datei, die das Ereignis ausgelöst hat. Beachten Sie, dass der Listener-Callback an das 39change39-Ereignis angehängt ist, das von fs. FSWatcher ausgelöst wird. Aber sie sind nicht dasselbe. Caveats Die fs. watch API ist nicht über mehrere Plattformen hinweg einheitlich und in einigen Situationen nicht verfügbar. Die rekursive Option wird nur unter OS X und Windows unterstützt. Verfügbarkeit Diese Funktion hängt vom zugrundeliegenden Betriebssystem ab, das eine Möglichkeit bietet, über Dateisystemänderungen benachrichtigt zu werden. Auf Linux-Systemen verwendet dies inotify. Auf BSD-Systemen verwendet dies kqueue On OS X, das verwendet kqueue für Dateien und FSEvents für Verzeichnisse. Auf SunOS-Systemen (einschließlich Solaris und SmartOS) werden Ereignishäfen verwendet. Auf Windows-Systemen hängt diese Funktion von ReadDirectoryChangesW ab. Bei Aix-Systemen ist diese Funktion von AHAFS abhängig. Die aktiviert werden müssen. Wenn die zugrundeliegende Funktionalität aus irgendeinem Grund nicht verfügbar ist, dann kann fs. watch nicht funktionieren. Beispielsweise können Dateien oder Verzeichnisse auf Netzwerkdateisystemen (NFS, SMB usw.) oder Host-Dateisystemen bei der Verwendung von Virtualisierungssoftware wie Vagrant, Docker usw. unzuverlässig und in einigen Fällen unzuverlässig sein. Sie können weiterhin fs verwenden. watchFile. Das stat poll verwendet, aber es ist langsamer und weniger zuverlässig. Inodes Unter Linux und OS X-Systemen löst fs. watch () den Pfad zu einem Inode auf und beobachtet den Inode. Wenn der überwachte Pfad gelöscht und neu erstellt wird, wird ihm ein neuer Inode zugewiesen. Die Uhr wird ein Ereignis für die Löschung aussenden, aber weiterhin die ursprüngliche Inode beobachten. Ereignisse für das neue Inode werden nicht emittiert. Dies ist das erwartete Verhalten. Dateinamen-Argument Das Dateinamen-Argument im Callback wird nur unter Linux und Windows unterstützt. Auch auf unterstützten Plattformen ist Dateiname nicht immer garantiert. Daher nehmen wir nicht an, dass das Dateinamen-Argument immer im Callback vorhanden ist und eine Rückfalllogik haben, wenn es null ist. Fs. watchFile (Dateiname, Optionen, Listener) Achten Sie auf Änderungen am Dateinamen. Der Callback-Listener wird bei jedem Zugriff auf die Datei aufgerufen. Das Optionsargument kann weggelassen werden. Wenn vorgesehen, sollte es ein Objekt sein. Das Options-Objekt kann einen booleschen Namen persistent enthalten, der angibt, ob der Prozess weiterhin ausgeführt werden soll, solange Dateien überwacht werden. Das Optionsobjekt kann eine Intervalleigenschaft angeben, die angibt, wie oft das Ziel in Millisekunden abgefragt werden soll. Die Voreinstellung ist. Der Listener erhält zwei Argumente für das aktuelle stat-Objekt und das vorherige stat-Objekt: Diese stat-Objekte sind Instanzen von fs. Stat. Wenn Sie benachrichtigt werden, wenn die Datei geändert wurde, nicht nur zugegriffen, müssen Sie curr. mtime und prev. mtime vergleichen. Anmerkung: Wenn eine fs. watchFile-Operation zu einem ENOENT-Fehler führt, ruft sie den Listener einmal auf, wobei alle Felder auf Null gesetzt sind (oder für Datumsangaben die Unix-Epoche). In Windows, blksize und blockiert Felder werden nicht definiert. Anstelle von null. Wenn die Datei später erstellt wird, wird der Listener erneut mit den neuesten Stat-Objekten aufgerufen. Dies ist eine Änderung der Funktionalität seit v0.10. Hinweis: fs. watch () ist effizienter als fs. watchFile und fs. unwatchFile. Fs. watch sollte statt fs. watchFile und fs. unwatchFile verwendet werden, wenn möglich. Fs. write (fd, Puffer, Offset, Länge, Position, Rückruf) Schreibpuffer in die von fd spezifizierte Datei. Offset und Länge bestimmen den zu schreibenden Teil des Puffers. Position bezieht sich auf den Versatz vom Anfang der Datei, wo diese Daten geschrieben werden sollen. Wenn Typ von Position 39number39. Werden die Daten an der aktuellen Position geschrieben. Siehe pwrite (2). Der Rückruf erhält drei Argumente (err, written, buffer), wobei schriftlich angibt, wie viele Bytes aus dem Puffer geschrieben wurden. Beachten Sie, dass es unsicher ist, fs. write mehrere Male in der gleichen Datei zu verwenden, ohne auf den Rückruf zu warten. Für dieses Szenario wird fs. createWriteStream dringend empfohlen. Unter Linux funktionieren Positionsschreibweisen nicht, wenn die Datei im Append-Modus geöffnet wird. Der Kernel ignoriert das Positionsargument und fügt die Daten immer an das Ende der Datei an. Fs. write (fd, data, position, encoding, callback) Schreiben Sie die Daten in die von fd angegebene Datei. Wenn es sich nicht um eine Puffer-Instanz handelt, wird der Wert einer Zeichenfolge zugewiesen. Position bezieht sich auf den Versatz vom Anfang der Datei, wo diese Daten geschrieben werden sollen. Wenn Typ von Position 39number39 werden die Daten an der aktuellen Position geschrieben. Siehe pwrite (2). Codierung ist die erwartete Zeichenkodierung. Der Rückruf erhält die Argumente (err, written, string), wobei geschrieben wird, wie viele Byte die übergebene Zeichenfolge geschrieben werden müssen. Beachten Sie, dass die geschriebenen Bytes nicht die gleichen sind wie Zeichenfolgenzeichen. Siehe Buffer. byteLength. Anders als beim Schreiben von Puffer. Muss die gesamte Zeichenfolge geschrieben werden. Es darf kein Teilstring angegeben werden. Dies liegt daran, dass der Byte-Offset der resultierenden Daten nicht derselbe wie der String-Offset sein darf. Beachten Sie, dass es unsicher ist, fs. write mehrere Male in der gleichen Datei zu verwenden, ohne auf den Rückruf zu warten. Für dieses Szenario wird fs. createWriteStream dringend empfohlen.


No comments:

Post a Comment