Axios урсгал буцаалаа. Файл хараахан бичигдэж байна.
Node дээр Axios ашиглан SOCKS агентаар татахдаа сүлжээнээс унших болон очих газарт бичих хоёуланг нь хүлээнэ үү.
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-ын хүрээнд хэрэглэгдэж бичигдсэн гэсэн үг бөгөөд энэ нь хүлээж буй хувилбар эсвэл баримт бичиг гэсэн үг биш. Алдаа эсвэл цуцлалтын үед сонгосон үргэлжлүүлэх бодлогын дагуу хэсэгчилсэн файлыг хадгал эсвэл устга. Цуцлах дохио нь холбогдох хүсэлт болон урсгалын үйлдлийг зогсоож болно; гэхдээ програмын гаралттай юу хийх ёстойг шийдэхгүй.