ווען Axios לייזט אויף אַ Node בקשה מיט responseType: 'stream', איז דער קערפּער גרייט צו נוצן. די טעקע איז אָבער נאָך נישט פֿאַרענדיקט. וואַרט אויף דער איבערפֿירונג צו איר ציל:

import { createWriteStream } from 'node:fs';
import { pipeline } from 'node:stream/promises';

const response = await client.get(url, { responseType: 'stream' });
await pipeline(response.data, createWriteStream(partPath));

דאָס נוצט אַ שוין קאָנפֿיגורירטן קליענט. זײַן אַדאַפּטער מוז שטיצן דעם אויסגעקליבענעם פּראָקסי אָדער SOCKS אַגענט; Axios' אַרײַנגעבויטע HTTP פּראָקסי אָפּציע און אַ SOCKS אַגענט זײַנען באַזונדערע מעקאַניזמען. די אַפּליקאַציע פֿאַרזאָרגט די URL, די צײַט־גרענעצן און די אָפּזאָג פּאָליטיק.

נוצט אַ פּראָוויזאָרישן וועג וואָס געהערט צו דער אָפּעראַציע. באַשטימט ווי אַזוי צו באַהאַנדלען קאָליזיעס איידער איר שאַפֿט דעם שרײַב־שטראָם, כּדי די רייניקונג נאָך אַ דורכפֿאַל זאָל נישט אַוועקנעמען עמעצנס אַנדערש טעקע. אַ באַוווּסטע פֿאָרזעצונג דאַרף איר אייגענע פּאָליטיק.

pipeline פֿאַראייניקט לייענען און שרײַבן און מעלדט זייער דורכפֿאַל. אַ רוף צו response.data.pipe(file) און אַ באַלדיקע פֿאַרשרייבונג פֿון הצלחה פֿאַרבייפֿט דעם פֿאַרענדיקונג־פּונקט. אַ נעצווערק־אונטערברעכונג אָדער אַ פֿולער דיסק קענען פּאַסירן נאָך דעם וואָס אַ גילטיקע HTTP ענטפֿער איז אָנגעקומען; האַלט אָפּ דעם ענטפֿער־קאָנטעקסט און דעם פֿעלער וואָס האָט אָפּגעשטעלט די פּראָצעסירונג.

נאָך דעם וואָס די ערוואַרטע פּראָצעסירונג איז געראָטן, פֿירט אויס די אַרטעפֿאַקט־פּרובונגען פֿון דער אַפּליקאַציע און דערנאָך פֿאָרעפֿנטלעכט דעם סוף־נאָמען. פֿאַרענדיקונג מיינט אַז דער שטראָם איז פֿאַרנוצט און געשריבן געוואָרן לויט די API; נישט אַז דאָס איז די ערוואַרטע אויסגאַבע אָדער דאָקומענט. ביי אַ דורכפֿאַל אָדער אָפּזאָג, האַלט אָדער נעמט אַוועק די טייל־טעקע לויט דער אויסגעקליבענער פֿאָרזעצונג־פּאָליטיק. אַן אָפּזאָג סיגנאַל קען אָפּשטעלן די באַטרעפֿנדיקע בקשה און שטראָם־אָפּעראַציעס; עס באַשטימט נישט וואָס די אַפּליקאַציע זאָל טאָן מיט דעם אַרויסגאַנג.

פֿאַרבונדענע אַרטיקלען