{"id":32229,"date":"2026-11-10T19:26:55","date_gmt":"2026-11-10T19:26:55","guid":{"rendered":"https:\/\/umang.pk\/2026\/11\/10\/%d8%a7%da%af%d8%b1-%d9%85%db%8c%da%ba-%d8%a7%db%8c%da%a9-%d8%a8%da%91%db%8c-%d9%81%d8%a7%d8%a6%d9%84-%d8%a7%d9%be-%d9%84%d9%88%da%88-%da%a9%d8%b1%d9%88%da%ba-%d8%a7%d9%88%d8%b1-%d8%b9%d8%a7%d8%b1\/"},"modified":"2026-11-10T19:26:55","modified_gmt":"2026-11-10T19:26:55","slug":"%d8%a7%da%af%d8%b1-%d9%85%db%8c%da%ba-%d8%a7%db%8c%da%a9-%d8%a8%da%91%db%8c-%d9%81%d8%a7%d8%a6%d9%84-%d8%a7%d9%be-%d9%84%d9%88%da%88-%da%a9%d8%b1%d9%88%da%ba-%d8%a7%d9%88%d8%b1-%d8%b9%d8%a7%d8%b1","status":"publish","type":"post","link":"https:\/\/umang.pk\/en_us\/2026\/11\/10\/%d8%a7%da%af%d8%b1-%d9%85%db%8c%da%ba-%d8%a7%db%8c%da%a9-%d8%a8%da%91%db%8c-%d9%81%d8%a7%d8%a6%d9%84-%d8%a7%d9%be-%d9%84%d9%88%da%88-%da%a9%d8%b1%d9%88%da%ba-%d8%a7%d9%88%d8%b1-%d8%b9%d8%a7%d8%b1\/","title":{"rendered":"\u0627\u06af\u0631 \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u0628\u0691\u06cc \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u0648\u06ba \u0627\u0648\u0631 \u0639\u0627\u0631\u0636\u06cc \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0644\u0646\u06a9 \u0628\u0646\u0627\u0624\u06ba \u062a\u0648 \u06a9\u06cc\u0627 \u06c1\u0648\u06af\u0627\u061f"},"content":{"rendered":"\n<div id=\"\">\n<p>5GB \u0648\u06cc\u0688\u06cc\u0648 \u0641\u0627\u0626\u0644 \u0628\u06be\u06cc\u062c\u0646\u0627 \u0622\u0633\u0627\u0646 \u0645\u0639\u0644\u0648\u0645 \u06c1\u0648 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba\u060c \u0627\u067e \u0644\u0648\u0688 \u067e\u0631 \u06a9\u0644\u06a9 \u06a9\u0631\u06cc\u06ba\u060c \u067e\u0631\u0648\u06af\u0631\u06cc\u0633 \u0628\u0627\u0631 \u06a9\u06d2 \u0645\u06a9\u0645\u0644 \u06c1\u0648\u0646\u06d2 \u06a9\u0627 \u0627\u0646\u062a\u0638\u0627\u0631 \u06a9\u0631\u06cc\u06ba\u060c \u067e\u06be\u0631 \u0644\u0646\u06a9 \u06a9\u0648 \u062f\u0648\u0633\u0631\u0648\u06ba \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0634\u06cc\u0626\u0631 \u06a9\u0631\u06cc\u06ba\u06d4 \u0644\u06cc\u06a9\u0646 \u062c\u0628 \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688 \u06c1\u0648 \u0631\u06c1\u06cc \u06c1\u06d2\u060c \u067e\u0633 \u0645\u0646\u0638\u0631 \u0645\u06cc\u06ba \u06a9\u0626\u06cc \u0686\u06cc\u0632\u06cc\u06ba \u06c1\u0648\u062a\u06cc \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u067e\u0631 \u0633\u0641\u0631 \u06a9\u0631\u0646\u0627\u060c \u0633\u0631\u0648\u0631 \u062a\u06a9 \u067e\u06c1\u0646\u0686\u0646\u0627\u060c \u0627\u0648\u0631 \u0627\u0633 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u06a9\u06c1 \u06a9\u0648\u0626\u06cc \u0627\u0648\u0631 \u0627\u0646 \u06a9\u0648 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0631 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u060c \u06a9\u06c1\u06cc\u06ba \u0645\u062d\u0641\u0648\u0638 \u06c1\u0648\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4 \u0633\u0631\u0648\u0633 \u06a9\u0648 \u06cc\u06c1 \u0628\u06be\u06cc \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2 \u06a9\u06c1 \u0648\u0635\u0648\u0644 \u06a9\u0646\u0646\u062f\u06c1 \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u06a9\u06d2 \u0627\u06a9\u0627\u0624\u0646\u0679 \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u06a9\u06d2 \u0628\u063a\u06cc\u0631 \u0641\u0627\u0626\u0644\u0648\u06ba \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u06af\u0631 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06d2 \u062f\u0648\u0631\u0627\u0646 \u0622\u067e \u06a9\u0627 \u0627\u0646\u0679\u0631\u0646\u06cc\u0679 \u06a9\u0646\u06a9\u0634\u0646 \u062e\u062a\u0645 \u06c1\u0648 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u062a\u0648 \u0622\u067e \u06a9\u0648 \u067e\u0648\u0631\u06cc \u0641\u0627\u0626\u0644 \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0645\u0646\u062a\u0642\u0644 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 \u062c\u0627\u0631\u06cc \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1 \u062f\u0631\u06a9\u0627\u0631 \u06c1\u06d2\u06d4<\/p>\n<p>\u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633 HTTP \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u0648\u06ba\u060c \u0633\u0679\u0648\u0631\u06cc\u062c \u0633\u0633\u0679\u0645\u0632\u060c \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633\u060c \u0627\u0646\u06a9\u0631\u067e\u0634\u0646\u060c \u0627\u0648\u0631 \u0628\u06cc\u06a9 \u06af\u0631\u0627\u0624\u0646\u0688 \u067e\u0631\u0648\u0633\u06cc\u0633\u0632 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u0646 \u06a9\u0627\u0645\u0648\u06ba \u06a9\u0627 \u0627\u0646\u062a\u0638\u0627\u0645 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 \u0644\u06cc\u06a9\u0646 \u0648\u06cc\u0628 \u0633\u0627\u0626\u0679\u0633 \u062f\u0631\u0627\u0635\u0644 \u0627\u0646 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba \u062c\u0646 \u06a9\u0627 \u0633\u0627\u0626\u0632 \u06a9\u0626\u06cc \u06af\u06cc\u06af\u0627 \u0628\u0627\u0626\u0679\u0633 \u06c1\u06d2\u061f \u0627\u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0645\u06cc\u06ba \u0633\u0628 \u06a9\u0686\u06be \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u06cc\u06ba\u061f \u0627\u067e \u0644\u0648\u0688 \u0645\u06a9\u0645\u0644 \u06c1\u0648\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f \u0641\u0627\u0626\u0644\u06cc\u06ba \u06a9\u06c1\u0627\u06ba \u062c\u0627\u062a\u06cc \u06c1\u06cc\u06ba\u061f \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0644\u0646\u06a9 \u06a9\u06cc \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u067e\u0631 \u06a9\u06cc\u0627 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u061f<\/p>\n<p>\u0627\u0633 \u0622\u0631\u0679\u06cc\u06a9\u0644 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u062f\u06cc\u06a9\u06be\u06cc\u06ba \u06af\u06d2 \u06a9\u06c1 \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633\u0632 \u06a9\u0633 \u0637\u0631\u062d \u0628\u0691\u06d2 \u0627\u067e \u0644\u0648\u0688\u0632 \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u0641\u0627\u0626\u0644\u0632 \u06a9\u0648 \u0627\u0633\u0679\u0648\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0644\u0646\u06a9\u0633 \u062c\u0646\u0631\u06cc\u0679 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u0627\u0648\u0631 \u06af\u0631\u06d2 \u06c1\u0648\u0626\u06d2 \u06a9\u0646\u06a9\u0634\u0646\u0632 \u0627\u0648\u0631 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0679\u0631\u0627\u0646\u0633\u0641\u0631\u0632 \u06a9\u0627 \u0646\u0638\u0645 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u06d4 \u067e\u06be\u0631\u060c \u0627\u06cc\u06a9 \u0628\u0627\u0631 \u062c\u0628 \u0622\u067e \u0627\u0633 \u062a\u06be\u06cc\u0648\u0631\u06cc \u06a9\u0648 \u0633\u0645\u062c\u06be \u0644\u06cc\u06ba \u06a9\u06c1 \u06cc\u06c1 \u0633\u0628 \u06a9\u06cc\u0633\u06d2 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u062a\u0648 \u0622\u0626\u06cc\u06d2 Node.js \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u06cc\u06a9 \u0628\u0646\u06cc\u0627\u062f\u06cc \u062d\u0635\u06c1 \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688\u0631 \u0628\u0646\u0627 \u06a9\u0631 \u0627\u0646 \u0645\u06cc\u06ba \u0633\u06d2 \u06a9\u0686\u06be \u0639\u0645\u0644 \u06a9\u0648 \u0639\u0645\u0644\u06cc \u0634\u06a9\u0644 \u0645\u06cc\u06ba \u062f\u06cc\u06a9\u06be\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-what-well-cover\">\u06c1\u0645 \u06a9\u06cc\u0627 \u0627\u062d\u0627\u0637\u06c1 \u06a9\u0631\u06cc\u06ba \u06af\u06d2:<\/h3>\n<h2 id=\"heading-why-email-attachments-fail-smtp-wasnt-designed-for-large-files\">\u0627\u06cc \u0645\u06cc\u0644 \u0645\u0646\u0633\u0644\u06a9\u0627\u062a \u06a9\u06cc\u0648\u06ba \u0646\u0627\u06a9\u0627\u0645 \u06c1\u0648 \u062c\u0627\u062a\u06d2 \u06c1\u06cc\u06ba: SMTP \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u06d2 \u0644\u06cc\u06d2 \u0688\u06cc\u0632\u0627\u0626\u0646 \u0646\u06c1\u06cc\u06ba \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4<\/h2>\n<p>\u0627\u0633 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u06a9\u06c1 \u06c1\u0645 \u0645\u062e\u0635\u0648\u0635 \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633\u0632 \u06a9\u0648 \u062f\u06cc\u06a9\u06be\u06cc\u06ba\u060c \u06cc\u06c1 \u0633\u0645\u062c\u06be\u0646\u06d2 \u0645\u06cc\u06ba \u0645\u062f\u062f \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0622\u067e \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0627\u06cc \u0645\u06cc\u0644\u0632 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u06a9\u06cc\u0648\u06ba \u0645\u0646\u0633\u0644\u06a9 \u0646\u06c1\u06cc\u06ba \u06a9\u0631 \u0633\u06a9\u062a\u06d2\u06d4 \u0627\u06cc \u0645\u06cc\u0644 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u06cc\u06ba \u0628\u06be\u06cc\u062c\u0646\u0627 \u0628\u0646\u06cc\u0627\u062f\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0646\u0627\u0642\u0635 \u06c1\u06d2 \u06a9\u06cc\u0648\u0646\u06a9\u06c1 \u0628\u0646\u06cc\u0627\u062f\u06cc \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u0645\u062a\u0646 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0628\u0646\u0627\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u060c \u0646\u06c1 \u06a9\u06c1 \u06c1\u0627\u0626\u06cc \u0631\u06cc\u0632\u0648\u0644\u0648\u0634\u0646 \u0645\u06cc\u0688\u06cc\u0627 \u06a9\u06d2 \u0644\u06cc\u06d2\u06d4<\/p>\n<h3 id=\"heading-smtp-and-attachment-size-limits\">SMTP \u0627\u0648\u0631 \u0645\u0646\u0633\u0644\u06a9\u06c1 \u0633\u0627\u0626\u0632 \u06a9\u06cc \u062d\u062f<\/h3>\n<p>\u0633\u0627\u062f\u06c1 \u0645\u06cc\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u067e\u0631\u0648\u0679\u0648\u06a9\u0648\u0644 (SMTP) \u0627\u0646\u0679\u0631\u0646\u06cc\u0679 \u067e\u0631 \u0627\u06cc \u0645\u06cc\u0644 \u067e\u06cc\u063a\u0627\u0645\u0627\u062a \u06a9\u06cc \u062a\u0631\u0633\u06cc\u0644 \u06a9\u0648 \u0633\u0646\u0628\u06be\u0627\u0644\u062a\u0627 \u06c1\u06d2\u06d4 \u0686\u0648\u0646\u06a9\u06c1 \u0633\u0631\u0648\u0631\u0632 \u06a9\u06d2 \u067e\u0627\u0633 \u0645\u062d\u062f\u0648\u062f \u0628\u06cc\u0646\u0688\u0648\u062a\u06be \u0627\u0648\u0631 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u062c\u06af\u06c1 \u06c1\u0648\u062a\u06cc \u06c1\u06d2\u060c \u0627\u0633 \u0644\u06cc\u06d2 \u0627\u06cc \u0645\u06cc\u0644 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0633\u062e\u062a \u0645\u0646\u0633\u0644\u06a9\u06c1 \u0633\u0627\u0626\u0632 \u06a9\u06cc \u062d\u062f\u06cc\u06ba \u0644\u06af\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0639\u0627\u0645 \u0637\u0648\u0631 \u067e\u0631 \u062a\u0642\u0631\u06cc\u0628\u0627\u064b 25MB\u06d4 \u062a\u0627\u06c1\u0645\u060c \u06cc\u06c1 \u062d\u062f \u0627\u0646\u06a9\u0648\u0688 \u0634\u062f\u06c1 \u067e\u06cc\u063a\u0627\u0645 \u06a9\u06d2 \u0633\u0627\u0626\u0632 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0633\u0627\u062a\u06be \u0622\u067e \u06a9\u06cc \u06c1\u0627\u0631\u0688 \u0688\u0631\u0627\u0626\u06cc\u0648 \u067e\u0631 \u0627\u0635\u0644 \u0641\u0627\u0626\u0644 \u067e\u0631 \u0628\u06be\u06cc \u0644\u0627\u06af\u0648 \u06c1\u0648\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-the-base64-problem\">\u0628\u06cc\u0633 64 \u06a9\u0627 \u0645\u0633\u0626\u0644\u06c1<\/h3>\n<p>\u0627\u06cc \u0645\u06cc\u0644 \u0645\u0646\u0633\u0644\u06a9\u0627\u062a \u06a9\u0648 \u0639\u0627\u0645 \u0637\u0648\u0631 \u067e\u0631 MIME \u0627\u0648\u0631 Base64 \u0641\u0627\u0631\u0645\u06cc\u0679\u0633 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u0646\u06a9\u0648\u0688 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 Base64 \u0636\u0631\u0648\u0631\u06cc \u06c1\u06d2 \u06a9\u06cc\u0648\u0646\u06a9\u06c1 \u06cc\u06c1 \u0628\u0627\u0626\u0646\u0631\u06cc \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0645\u062a\u0646 \u06a9\u06d2 \u0645\u0648\u0627\u0641\u0642 \u062d\u0631\u0648\u0641 \u0645\u06cc\u06ba \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0633\u06d2 \u0627\u06cc \u0645\u06cc\u0644 \u0633\u0631\u0648\u0631 \u0645\u062d\u0641\u0648\u0638 \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u0631\u0648\u0679 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0679\u0631\u0627\u0646\u0633\u0645\u06cc\u0634\u0646 \u06a9\u06d2 \u0645\u0633\u0626\u0644\u06d2 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0644\u06cc\u06a9\u0646 \u0628\u06c1\u062a \u0632\u06cc\u0627\u062f\u06c1 \u06a9\u0627\u0631\u06a9\u0631\u062f\u06af\u06cc \u06a9\u06d2 \u0645\u0633\u0627\u0626\u0644 \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062a\u0627 \u06c1\u06d2. \u06cc\u06c1 \u0627\u0646\u06a9\u0648\u0688\u0646\u06af \u0688\u06cc\u0679\u0627 \u06a9\u06d2 \u0633\u0627\u0626\u0632 \u0645\u06cc\u06ba \u062a\u0642\u0631\u06cc\u0628\u0627\u064b 33 \u0641\u06cc\u0635\u062f \u0627\u0636\u0627\u0641\u06c1 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<p>\u0622\u067e \u0627\u0633 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0628\u0646\u06cc\u0627\u062f\u06cc \u062a\u0641\u0635\u06cc\u0644\u0627\u062a \u06cc\u06c1\u0627\u06ba \u067e\u0691\u06be \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba: <u>\u0622\u0631 \u0627\u06cc\u0641 \u0633\u06cc 2045<\/u>MIME \u06a9\u06d2 \u0644\u06cc\u06d2 Base64 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0627\u0646\u06a9\u0648\u0688\u0646\u06af \u06a9\u06cc \u0648\u0636\u0627\u062d\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0639\u0645\u0644\u06cc \u0637\u0648\u0631 \u067e\u0631\u060c \u0627\u0633 \u06a9\u0627 \u0645\u0637\u0644\u0628 \u06c1\u06d2 \u06a9\u06c1 \u0627\u06cc\u06a9 30MB \u0648\u06cc\u0688\u06cc\u0648 \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062a\u0642\u0631\u06cc\u0628\u0627\u064b 40MB \u062c\u06af\u06c1 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u0648\u06af\u06cc \u0627\u0633 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u06a9\u06c1 \u0627\u0636\u0627\u0641\u06cc \u067e\u06cc\u063a\u0627\u0645 \u06a9\u06d2 \u0627\u0648\u0648\u0631 \u06c1\u06cc\u0688 \u06a9\u0627 \u062d\u0633\u0627\u0628 \u0644\u06af\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u060c \u062c\u0648 \u0632\u06cc\u0627\u062f\u06c1 \u062a\u0631 \u0627\u06cc \u0645\u06cc\u0644 \u0633\u0631\u0648\u0631\u0632 \u067e\u0631 \u0627\u0686\u06be\u0627\u0644\u0646\u06d2 \u06a9\u06cc \u0636\u0645\u0627\u0646\u062a \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-the-core-architecture-what-happens-behind-a-file-transfer-service\">\u0628\u0646\u06cc\u0627\u062f\u06cc \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631: \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633 \u06a9\u06d2 \u067e\u06cc\u0686\u06be\u06d2 \u06a9\u06cc\u0627 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u061f<\/h2>\n<p>\u0627\u06cc \u0645\u06cc\u0644 \u06a9\u06cc \u062d\u062f\u0648\u062f \u06a9\u0648 \u0631\u0648\u06a9\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633\u0632 \u0627\u06cc\u06a9 \u062e\u0627\u0635\u060c \u0688\u06cc\u06a9\u067e\u0644\u0688 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u06d4 \u062e\u0648\u062f \u0627\u0646 \u0645\u06cc\u06ba \u0633\u06d2 \u06a9\u0626\u06cc \u0633\u0633\u0679\u0645\u0632 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f\u060c \u0645\u06cc\u06ba \u0633\u0645\u062c\u06be\u062a\u0627 \u06c1\u0648\u06ba \u06a9\u06c1 \u0688\u06cc\u0679\u0627 \u06a9\u06d2 \u0628\u06c1\u0627\u0624 \u06a9\u0648 \u0633\u0645\u062c\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u067e\u0627\u0646\u0686 \u0627\u06c1\u0645 \u0627\u062c\u0632\u0627\u0621 \u06a9\u0627 \u0648\u0627\u0636\u062d \u0630\u06c1\u0646\u06cc \u0645\u0627\u0688\u0644 \u0642\u0627\u0626\u0645 \u06a9\u0631\u0646\u0627 \u0636\u0631\u0648\u0631\u06cc \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-the-client\">\u06a9\u0644\u0627\u0626\u0646\u0679<\/h3>\n<p>\u0633\u0641\u0631 \u06a9\u0644\u0627\u0626\u0646\u0679 \u0633\u06d2 \u0634\u0631\u0648\u0639 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u060c \u0639\u0627\u0645 \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u06a9 \u0648\u06cc\u0628 \u0628\u0631\u0627\u0624\u0632\u0631 \u06cc\u0627 \u0688\u06cc\u0633\u06a9 \u0679\u0627\u067e \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u062c\u06c1\u0627\u06ba \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0648\u0627\u0644\u0627 \u0641\u0627\u0626\u0644 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u062c\u062f\u06cc\u062f \u0628\u0631\u0627\u0624\u0632\u0631 \u0641\u0627\u0626\u0644 \u0645\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631\u0646\u06d2\u060c \u062e\u0627\u0645 \u0645\u0648\u0627\u062f \u06a9\u0648 \u067e\u0691\u06be\u0646\u06d2\u060c \u0627\u0648\u0631 \u0688\u06cc\u0679\u0627 \u06a9\u06d2 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u062a\u06a9 \u067e\u06c1\u0646\u0686\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0630\u06c1\u0627\u0646\u062a \u0633\u06d2 \u0686\u06be\u0648\u0679\u06d2\u060c \u0632\u06cc\u0627\u062f\u06c1 \u0642\u0627\u0628\u0644 \u0627\u0646\u062a\u0638\u0627\u0645 \u062d\u0635\u0648\u06ba \u0645\u06cc\u06ba \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 JavaScript \u06a9\u06d2 \u0641\u0627\u0626\u0644 API \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-the-upload-server\">\u0627\u067e \u0644\u0648\u0688 \u0633\u0631\u0648\u0631<\/h3>\n<p>\u062c\u0628 \u06a9\u0644\u0627\u0626\u0646\u0679 \u0688\u06cc\u0679\u0627 \u06a9\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc \u0634\u0631\u0648\u0639 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u067e \u0644\u0648\u0688 \u0633\u0631\u0648\u0631 \u0645\u062f\u0627\u062e\u0644\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0633\u0631\u0648\u0631 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u06cc\u06ba \u0648\u0635\u0648\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0635\u0627\u0631\u0641\u06cc\u0646 \u06a9\u06cc \u062a\u0635\u062f\u06cc\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0622\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0688\u06cc\u0679\u0627 \u06a9\u06cc \u062a\u0648\u062b\u06cc\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06d2 \u067e\u0648\u0631\u06d2 \u0639\u0645\u0644 \u06a9\u0648 \u0645\u0631\u0628\u0648\u0637 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0679\u0631\u06cc\u0641\u06a9 \u067e\u0648\u0644\u06cc\u0633 \u0627\u06c1\u0644\u06a9\u0627\u0631 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0633 \u0628\u0627\u062a \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0688\u06cc\u0679\u0627 \u06a9\u0627 \u06a9\u0686\u06be \u062d\u0635\u06c1 \u0635\u062d\u06cc\u062d \u0641\u0627\u0631\u0645\u06cc\u0679 \u0645\u06cc\u06ba \u067e\u06c1\u0646\u0686 \u062c\u0627\u0626\u06d2\u06d4<\/p>\n<h3 id=\"heading-the-storage-layer\">\u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u0633\u0637\u062d<\/h3>\n<p>\u0631\u0648\u0627\u06cc\u062a\u06cc \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0633\u0631\u0648\u0631\u0632 \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0631\u06a9\u06be\u0646\u06d2 \u0645\u06cc\u06ba \u062e\u0648\u0641\u0646\u0627\u06a9 \u06c1\u06cc\u06ba\u060c \u0644\u06c1\u0630\u0627 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u062a\u06c1\u06c1 \u06c1\u06cc\u0648\u06cc \u0644\u0641\u0679\u0646\u06af \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u062f\u06c1 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0639\u0627\u0645 \u0637\u0648\u0631 \u067e\u0631 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u06a9\u0633\u06cc \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0633\u0644\u0648\u0634\u0646 \u067e\u0631 \u0628\u06be\u06cc\u062c \u062f\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0633\u0633\u0679\u0645 \u06a9\u0648 \u0628\u0646\u06cc\u0627\u062f\u06cc \u0627\u067e \u0644\u0648\u0688 \u0633\u0631\u0648\u0631 \u06a9\u0648 \u06a9\u0631\u06cc\u0634 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 \u063a\u06cc\u0631 \u0645\u0639\u06cc\u0646\u06c1 \u0645\u062f\u062a \u062a\u06a9 \u067e\u06cc\u0645\u0627\u0646\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-the-metadata-database\">\u0645\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633<\/h3>\n<p>\u062c\u0628\u06a9\u06c1 \u0627\u0635\u0644 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0645\u06cc\u06ba \u0645\u0646\u062a\u0642\u0644 \u06a9\u06cc\u0627 \u062c\u0627 \u0631\u06c1\u0627 \u06c1\u06d2\u060c \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u06a9\u0648 \u06cc\u06c1 \u06cc\u0627\u062f \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0637\u0631\u06cc\u0642\u06c1 \u062f\u0631\u06a9\u0627\u0631 \u06c1\u06d2 \u06a9\u06c1 \u0648\u06c1 \u0641\u0627\u0626\u0644 \u06a9\u06cc\u0627 \u06c1\u06d2\u06d4 \u0645\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u0627\u06c1\u0645 \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u06a9\u0648 \u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0633 \u0645\u06cc\u06ba \u0627\u0635\u0644 \u0641\u0627\u0626\u0644 \u06a9\u0627 \u0646\u0627\u0645\u060c \u0641\u0627\u0626\u0644 \u06a9\u0627 \u0633\u0627\u0626\u0632\u060c \u0645\u0648\u0627\u062f \u06a9\u06cc \u0642\u0633\u0645\u060c \u0645\u062e\u0635\u0648\u0635 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u0644\u06cc\u062f\u060c \u0645\u0646\u0641\u0631\u062f \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0634\u0646\u0627\u062e\u062a \u06a9\u0646\u0646\u062f\u06c1\u060c \u0627\u0648\u0631 \u062f\u0631\u0633\u062a \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u0627 \u0679\u0627\u0626\u0645 \u0627\u0633\u0679\u06cc\u0645\u067e \u0634\u0627\u0645\u0644 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-the-download-server\">\u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0633\u0631\u0648\u0631<\/h3>\n<p>\u062c\u0628 \u06a9\u0648\u0626\u06cc \u0645\u0634\u062a\u0631\u06a9\u06c1 \u0644\u0646\u06a9 \u06a9\u0648 \u06a9\u06be\u0648\u0644\u062a\u0627 \u06c1\u06d2\u060c \u062a\u0648 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0633\u0631\u0648\u0631 \u0627\u067e\u0646\u06d2 \u0642\u0628\u0636\u06d2 \u0645\u06cc\u06ba \u0644\u06d2 \u0644\u06cc\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0627\u062c\u0627\u0632\u062a\u0648\u06ba \u0627\u0648\u0631 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u06cc \u062a\u0627\u0631\u06cc\u062e\u0648\u06ba \u06a9\u0648 \u0686\u06cc\u06a9 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u06a9\u06cc \u062c\u0627\u0646\u0686 \u067e\u0691\u062a\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0627\u06af\u0631 \u0633\u0628 \u06a9\u0686\u06be \u062f\u0631\u0633\u062a \u06c1\u06d2\u060c \u062a\u0648 \u06cc\u06c1 \u0630\u062e\u06cc\u0631\u06c1 \u0634\u062f\u06c1 \u0686\u06cc\u0632 \u06a9\u0648 \u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u067e\u0631\u062a \u0633\u06d2 \u0628\u0627\u0632\u06cc\u0627\u0641\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u0633\u06d2 \u067e\u0627\u0633 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-chunked-and-resumable-uploads-how-large-files-survive-bad-internet-connections\">\u0686\u0646\u06a9\u0646\u06af \u0627\u0648\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0627\u067e \u0644\u0648\u0688\u0632: \u06a9\u062a\u0646\u06cc \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u06cc\u06ba \u062e\u0631\u0627\u0628 \u0627\u0646\u0679\u0631\u0646\u06cc\u0679 \u06a9\u0646\u06cc\u06a9\u0634\u0646 \u0633\u06d2 \u0628\u0686 \u062c\u0627\u062a\u06cc \u06c1\u06cc\u06ba\u06d4<\/h2>\n<p>\u0627\u06cc\u06a9 \u0645\u0633\u062a\u0642\u0644 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0645\u06cc\u06ba 5GB \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u0646\u0627 \u0627\u06cc\u06a9 \u062a\u0628\u0627\u06c1\u06cc \u06c1\u06d2 \u062c\u0633 \u06a9\u0627 \u0627\u0646\u062a\u0638\u0627\u0631 \u06a9\u06cc\u0627 \u062c\u0627 \u0631\u06c1\u0627 \u06c1\u06d2\u06d4 \u0627\u06af\u0631 \u06a9\u0646\u06cc\u06a9\u0679\u06cc\u0648\u06cc\u0679\u06cc 99% \u062a\u06a9 \u06af\u0631 \u062c\u0627\u062a\u06cc \u06c1\u06d2 \u062a\u0648\u060c \u0648\u0627\u062d\u062f \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u0627 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u0635\u0627\u0631\u0641 \u06a9\u0648 \u06c1\u0631 \u0686\u06cc\u0632 \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u067e\u0631 \u0645\u062c\u0628\u0648\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-breaking-a-large-file-into-smaller-chunks\">\u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0686\u06be\u0648\u0679\u06d2 \u0679\u06a9\u0691\u0648\u06ba \u0645\u06cc\u06ba \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u06cc\u06ba\u06d4<\/h3>\n<p>\u0627\u0633 \u0645\u0633\u0626\u0644\u06d2 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u062c\u062f\u06cc\u062f \u06a9\u0644\u0627\u0626\u0646\u0679\u0633 \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0686\u06be\u0648\u0679\u06d2 \u062d\u0635\u0648\u06ba \u0645\u06cc\u06ba \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062c\u06cc\u0633\u06d2 \u06a9\u06c1 10MB \u0679\u06a9\u0691\u0648\u06ba \u0645\u06cc\u06ba\u06d4 \u06c1\u0631 \u062d\u0635\u06c1 \u0633\u0631\u0648\u0631 \u067e\u0631 \u0627\u06cc\u06a9 \u0622\u0632\u0627\u062f HTTP \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0633\u0631\u0648\u0631 \u0627\u062d\u062a\u06cc\u0627\u0637 \u0633\u06d2 \u0679\u0631\u06cc\u06a9 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u06a9\u0648\u0646 \u0633\u06d2 \u0679\u06a9\u0691\u06d2 \u0622\u0626\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06a9\u0686\u06be \u062c\u062f\u06cc\u062f \u0633\u0633\u0679\u0645\u0632 \u0645\u062a\u0648\u0627\u0632\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u06a9 \u0633\u0627\u062a\u06be \u0645\u062a\u0639\u062f\u062f \u0679\u06a9\u0691\u0648\u06ba \u06a9\u0648 \u0628\u06be\u06cc \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062c\u0633 \u0633\u06d2 \u0645\u062c\u0645\u0648\u0639\u06cc \u062a\u0627\u062e\u06cc\u0631 \u06a9\u0648 \u0646\u0645\u0627\u06cc\u0627\u06ba \u0637\u0648\u0631 \u067e\u0631 \u06a9\u0645 \u06a9\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u06cc\u06c1 \u0646\u0648\u0679 \u06a9\u0631\u0646\u0627 \u0636\u0631\u0648\u0631\u06cc \u06c1\u06d2 \u06a9\u06c1 \u0686\u0646\u06a9\u0688 \u0627\u067e \u0644\u0648\u0688 HTTP chunked \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0627\u0646\u06a9\u0648\u0688\u0646\u06af (HTTP \u0645\u06cc\u0633\u062c \u0628\u0627\u0688\u06cc \u06a9\u0648 \u0641\u0631\u06cc\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u0627 \u0627\u06cc\u06a9 \u0637\u0631\u06cc\u0642\u06c1 \u06a9\u0627\u0631) \u0633\u06d2 \u0628\u0627\u0644\u06a9\u0644 \u0645\u062e\u062a\u0644\u0641 \u0622\u0631\u06a9\u06cc\u0679\u06cc\u06a9\u0686\u0631\u0644 \u067e\u06cc\u0679\u0631\u0646 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-what-happens-when-the-internet-disconnects\">\u0627\u06af\u0631 \u0645\u06cc\u0631\u0627 \u0627\u0646\u0679\u0631\u0646\u06cc\u0679 \u06a9\u0646\u06a9\u0634\u0646 \u06a9\u06be\u0648 \u062c\u0627\u0626\u06d2 \u062a\u0648 \u06a9\u06cc\u0627 \u06c1\u0648\u06af\u0627\u061f<\/h3>\n<p>\u0641\u0631\u0636 \u06a9\u0631\u06cc\u06ba \u06a9\u06c1 \u062c\u0628 \u0622\u067e \u06a9\u0627 Wi-Fi \u06a9\u0646\u06a9\u0634\u0646 \u062a\u0635\u0627\u062f\u0641\u06cc \u0637\u0648\u0631 \u067e\u0631 \u06af\u0631\u0627 \u062a\u0648 \u0622\u067e \u06a9\u06cc 80% \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u06cc\u06ba \u06a9\u0627\u0645\u06cc\u0627\u0628\u06cc \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0627\u067e \u0644\u0648\u0688 \u06c1\u0648 \u06af\u0626\u06cc\u06ba\u06d4 \u0627\u06af\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0627\u067e \u0644\u0648\u0688\u0632 \u0646\u06c1\u06cc\u06ba \u06c1\u06cc\u06ba \u062a\u0648 \u0622\u067e \u06a9\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a \u0636\u0627\u0626\u0639 \u06c1\u0648 \u062c\u0627\u0626\u06d2 \u06af\u06cc\u06d4 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u06d2 \u0633\u0627\u062a\u06be\u060c \u06a9\u0644\u0627\u0626\u0646\u0679 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0648\u0691\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0633\u0631\u0648\u0631 \u0633\u06d2 \u0627\u067e \u0644\u0648\u0688 \u0622\u0641\u0633\u06cc\u0679 \u0627\u0648\u0631 \u06a9\u0627\u0645\u06cc\u0627\u0628\u06cc \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0645\u0648\u0635\u0648\u0644 \u0627\u0648\u0631 \u0630\u062e\u06cc\u0631\u06c1 \u0634\u062f\u06c1 \u0628\u0627\u0626\u0679\u0633 \u06a9\u06cc \u0635\u062d\u06cc\u062d \u062a\u0639\u062f\u0627\u062f \u06a9\u06d2 \u0644\u06cc\u06d2 \u067e\u0648\u0686\u06be\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u0633 \u06a9\u06d2 \u0628\u0639\u062f \u06a9\u0644\u0627\u0626\u0646\u0679 \u0635\u062d\u06cc\u062d \u062c\u06af\u06c1 \u0633\u06d2 \u0628\u063a\u06cc\u0631 \u06a9\u0633\u06cc \u0631\u06a9\u0627\u0648\u0679 \u06a9\u06d2 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u0646\u0627 \u062c\u0627\u0631\u06cc \u0631\u06a9\u06be\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-checksums-making-sure-nothing-gets-corrupted\">\u0686\u06cc\u06a9\u0633\u0645: \u062a\u0635\u062f\u06cc\u0642 \u06a9\u0631\u06cc\u06ba \u06a9\u06c1 \u06cc\u06c1 \u062e\u0631\u0627\u0628 \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4<\/h3>\n<p>\u0646\u06cc\u0679 \u0648\u0631\u06a9 \u06a9\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc \u0628\u0639\u0636 \u0627\u0648\u0642\u0627\u062a \u0628\u0679\u0633 \u06a9\u0648 \u067e\u0644\u0679 \u0633\u06a9\u062a\u06cc \u06c1\u06d2\u060c \u062c\u0633 \u06a9\u06cc \u0648\u062c\u06c1 \u0633\u06d2 \u0641\u0627\u0626\u0644\u06cc\u06ba \u062e\u0631\u0627\u0628 \u06c1\u0648 \u062c\u0627\u062a\u06cc \u06c1\u06cc\u06ba\u06d4 \u0627\u0633 \u06a9\u0648 \u0631\u0648\u06a9\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06a9\u0644\u0627\u0626\u0646\u0679 \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u06c1\u0631 \u0627\u06cc\u06a9 \u062d\u0635\u06c1 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u06a9\u0631\u067e\u0679\u0648\u06af\u0631\u0627\u0641\u06a9 \u06c1\u06cc\u0634 (\u0686\u06cc\u06a9\u0633\u0645) \u062a\u06cc\u0627\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0633\u0631\u0648\u0631 \u062d\u0635\u06c1 \u0648\u0635\u0648\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u067e\u0646\u06cc \u06c1\u06cc\u0634 \u06a9\u0627 \u062d\u0633\u0627\u0628 \u0644\u06af\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u062f\u0648\u0646\u0648\u06ba \u06a9\u0627 \u0645\u0648\u0627\u0632\u0646\u06c1 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u06af\u0631 \u0686\u06cc\u06a9\u0633\u0645 \u0645\u0645\u0627\u062b\u0644 \u0646\u06c1\u06cc\u06ba \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062a\u0648 \u0633\u0631\u0648\u0631 \u062d\u0635\u06c1 \u06a9\u0648 \u0645\u0633\u062a\u0631\u062f \u06a9\u0631 \u062f\u06cc\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u06a9\u0644\u0627\u0626\u0646\u0679 \u0633\u06d2 \u062f\u0648\u0628\u0627\u0631\u06c1 \u06a9\u0648\u0634\u0634 \u06a9\u0631\u0646\u06d2 \u06a9\u0648 \u06a9\u06c1\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0627\u06af\u0631 \u0622\u067e \u0627\u0633 \u067e\u0631 \u0639\u0645\u0644 \u062f\u0631\u0622\u0645\u062f \u06a9\u0631\u0646\u0627 \u0686\u0627\u06c1\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 <u>TUS \u062f\u0648\u0628\u0627\u0631\u06c1 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0627\u067e \u0644\u0648\u0688 \u067e\u0631\u0648\u0679\u0648\u06a9\u0648\u0644<\/u> \u0627\u067e \u0644\u0648\u0688 \u0622\u0641\u0633\u06cc\u0679\u0633 \u0627\u0648\u0631 \u0686\u06cc\u06a9\u0633\u0645 \u062a\u0635\u062f\u06cc\u0642 \u06a9\u06d2 \u0627\u0646\u062a\u0638\u0627\u0645 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0644\u0627\u062c\u0648\u0627\u0628\u060c \u0645\u0639\u06cc\u0627\u0631\u06cc \u062d\u0648\u0627\u0644\u06c1\u06d4 \u0628\u06be\u06cc\u060c <u>\u0627\u06cc\u0645\u06cc\u0632\u0648\u0646 S3 \u0645\u0644\u0679\u06cc \u067e\u0627\u0631\u0679 \u0627\u067e \u0644\u0648\u0688 \u06af\u0627\u0626\u06cc\u0688<\/u> \u0645\u062a\u0648\u0627\u0632\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc \u067e\u0631 \u06a9\u0627\u0631\u0631\u0648\u0627\u0626\u06cc \u06a9\u0631\u0646\u06d2 \u0627\u0648\u0631 \u0646\u0627\u06a9\u0627\u0645 \u062d\u0635\u0648\u06ba \u06a9\u06cc \u062f\u0648\u0628\u0627\u0631\u06c1 \u06a9\u0648\u0634\u0634 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0646\u0688\u0633\u0679\u0631\u06cc \u06a9\u06d2 \u0645\u0639\u06cc\u0627\u0631\u06cc \u0628\u0644\u06cc\u0648 \u067e\u0631\u0646\u0679 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-storage-and-link-generation-where-does-your-file-actually-go\">\u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u0644\u0646\u06a9\u0633 \u0628\u0646\u0627\u0626\u06cc\u06ba: \u0622\u067e \u06a9\u06cc \u0641\u0627\u0626\u0644\u06cc\u06ba \u062f\u0631\u0627\u0635\u0644 \u06a9\u06c1\u0627\u06ba \u062c\u0627\u062a\u06cc \u06c1\u06cc\u06ba\u061f<\/h2>\n<p>\u0627\u06cc\u06a9 \u0628\u0627\u0631 \u062c\u0628 \u062a\u0645\u0627\u0645 \u0679\u06a9\u0691\u0648\u06ba \u06a9\u06cc \u0634\u0646\u0627\u062e\u062a \u0627\u0648\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0645\u0639 \u06c1\u0648 \u062c\u0627\u0626\u06d2 \u062a\u0648\u060c \u0633\u0631\u0648\u0633 \u06a9\u0648 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0645\u062d\u0641\u0648\u0638 \u062c\u06af\u06c1 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u0648\u062a\u06cc \u06c1\u06d2 \u062c\u0628 \u062a\u06a9 \u06a9\u06c1 \u0648\u0635\u0648\u0644 \u06a9\u0646\u0646\u062f\u06c1 \u0627\u0646\u06c1\u06cc\u06ba \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062a\u06cc\u0627\u0631 \u0646\u06c1 \u06c1\u0648\u06d4<\/p>\n<h3 id=\"heading-why-services-use-object-storage\">\u0633\u0631\u0648\u0633\u0632 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc\u0648\u06ba \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u06d4<\/h3>\n<p>\u0645\u06cc\u0631\u06cc \u0631\u0627\u0626\u06d2 \u0645\u06cc\u06ba\u060c \u0645\u0648\u062c\u0648\u062f\u06c1 \u0644\u0648\u06a9\u0644 \u0633\u0631\u0648\u0631 \u0688\u0627\u0626\u0631\u06a9\u0679\u0631\u06cc \u0645\u06cc\u06ba \u06af\u06cc\u06af\u0627 \u0628\u0627\u0626\u0679\u0633 \u0635\u0627\u0631\u0641 \u06a9\u06d2 \u0627\u067e \u0644\u0648\u0688\u0632 \u06a9\u0648 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u06a9\u0648\u0634\u0634 \u06a9\u0631\u0646\u0627 \u0627\u06cc\u06a9 \u062a\u0639\u0645\u06cc\u0631\u0627\u062a\u06cc \u063a\u0644\u0637\u06cc \u06c1\u06d2\u06d4 \u0627\u0633 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c \u0633\u0631\u0648\u0633 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 \u0641\u0627\u0626\u0644\u06cc\u06ba \u0628\u0627\u0642\u0627\u0639\u062f\u06c1 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0645\u062d\u0641\u0648\u0638 \u06a9\u06cc \u062c\u0627\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u0627\u0648\u0631 \u06c1\u0631 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u06a9\u0648 \u0627\u06cc\u06a9 \u0645\u0646\u0641\u0631\u062f \u06a9\u0644\u06cc\u062f \u062a\u0641\u0648\u06cc\u0636 \u06a9\u06cc \u062c\u0627\u062a\u06cc \u06c1\u06d2\u06d4 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0627\u0646\u062a\u06c1\u0627\u0626\u06cc \u067e\u0627\u0626\u06cc\u062f\u0627\u0631 \u06c1\u06d2 \u0627\u0648\u0631 \u0628\u06cc\u06a9 \u0648\u0642\u062a \u0644\u0627\u06a9\u06be\u0648\u06ba \u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0627\u06cc\u0688\u062c\u0633\u0679 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0628\u06c1\u062a \u0622\u0633\u0627\u0646\u06cc \u0633\u06d2 \u067e\u06cc\u0645\u0627\u0646\u06c1 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-how-a-download-link-is-created\">\u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0644\u0646\u06a9\u0633 \u06a9\u06cc\u0633\u06d2 \u0628\u0646\u0627\u0626\u06d2 \u062c\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/h3>\n<p>\u0630\u062e\u06cc\u0631\u06c1 \u0634\u062f\u06c1 \u0641\u0627\u0626\u0644\u0648\u06ba \u0627\u0648\u0631 \u0642\u0627\u0628\u0644 \u0627\u0634\u062a\u0631\u0627\u06a9 \u0644\u0646\u06a9\u0633 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u062a\u0639\u0644\u0642 \u0645\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u067e\u0631 \u0645\u0646\u062d\u0635\u0631 \u06c1\u06d2\u06d4 \u0627\u067e \u0644\u0648\u0688 \u0645\u06a9\u0645\u0644 \u06c1\u0648\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f\u060c \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0641\u0627\u0626\u0644 \u06a9\u06cc \u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u06a9\u0648 \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u0645\u06cc\u06ba \u0627\u0633\u0679\u0648\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u06cc\u06a9 \u0645\u0646\u0641\u0631\u062f \u0631\u0633\u0627\u0626\u06cc \u0679\u0648\u06a9\u0646 \u062a\u06cc\u0627\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 \u0648\u0635\u0648\u0644 \u06a9\u0646\u0646\u062f\u06c1 \u06a9\u0648 \u0627\u06cc\u06a9 URL \u0645\u0648\u0635\u0648\u0644 \u06c1\u0648\u062a\u0627 \u06c1\u06d2 \u062c\u0633 \u0645\u06cc\u06ba \u0648\u06c1 \u0645\u062e\u0635\u0648\u0635 \u0679\u0648\u06a9\u0646 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4 \u062c\u0628 \u0622\u067e \u06a9\u0633\u06cc \u0644\u0646\u06a9 \u067e\u0631 \u06a9\u0644\u06a9 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062a\u0648 \u0633\u0631\u0648\u0631 \u0679\u0648\u06a9\u0646 \u06a9\u0648 \u067e\u0691\u06be\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0633 \u06a9\u06d2 \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u0645\u06cc\u06ba \u0645\u062a\u0639\u0644\u0642\u06c1 \u0641\u0627\u0626\u0644 \u062a\u0644\u0627\u0634 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0622\u067e \u06a9\u06cc \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a\u0648\u06ba \u06a9\u0648 \u0686\u06cc\u06a9 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-why-are-these-links-difficult-to-guess\">\u0627\u0646 \u0644\u0646\u06a9\u0633 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u0644\u06af\u0627\u0646\u0627 \u0627\u062a\u0646\u0627 \u0645\u0634\u06a9\u0644 \u06a9\u06cc\u0648\u06ba \u06c1\u06d2\u061f<\/h3>\n<p>\u0645\u062d\u0641\u0648\u0638 \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0644\u0646\u06a9\u0633 \u0627\u0639\u0644\u06cc \u062f\u0631\u062c\u06d2 \u06a9\u06cc \u0627\u06cc\u0646\u0679\u0631\u0648\u067e\u06cc \u067e\u0631 \u0628\u06c1\u062a \u0632\u06cc\u0627\u062f\u06c1 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0648\u06c1 \u0628\u06d2 \u062a\u0631\u062a\u06cc\u0628 \u067e\u0646 \u06c1\u06d2 \u062c\u0633 \u06a9\u06cc \u0648\u062c\u06c1 \u0633\u06d2 \u0679\u0648\u06a9\u0646\u0632 \u06a9\u06cc \u0631\u06cc\u0627\u0636\u06cc \u06a9\u06cc \u067e\u06cc\u0634 \u06af\u0648\u0626\u06cc \u06a9\u0631\u0646\u0627 \u062a\u0642\u0631\u06cc\u0628\u0627\u064b \u0646\u0627\u0645\u0645\u06a9\u0646 \u06c1\u0648 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u0632\u06cc\u062f \u0628\u0631\u0622\u06ba\u060c \u0633\u06cc\u06a9\u0648\u0631\u0679\u06cc \u0633\u0633\u0679\u0645\u0632 \u062f\u0633\u062a\u062e\u0637 \u0634\u062f\u06c1 \u06cc\u0648 \u0622\u0631 \u0627\u06cc\u0644 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0627\u06cc\u06a9 \u0627\u06cc\u0633\u0627 \u06cc\u0648 \u0622\u0631 \u0627\u06cc\u0644 \u06c1\u06d2 \u062c\u0633 \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u06a9\u0631\u067e\u0679\u0648\u06af\u0631\u0627\u0641\u06a9 \u062f\u0633\u062a\u062e\u0637 \u06c1\u06d2 \u062c\u0648 \u0645\u062d\u062f\u0648\u062f \u0627\u0648\u0631 \u0633\u062e\u062a\u06cc \u0633\u06d2 \u0646\u0627\u0641\u0630 \u0634\u062f\u06c1 \u0645\u062f\u062a \u06a9\u06d2 \u0644\u06cc\u06d2 \u0631\u0633\u0627\u0626\u06cc \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u062c\u06cc\u0633\u0627 \u06a9\u06c1 \u0645\u06cc\u06ba \u0628\u06cc\u0627\u0646 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4 <u>OWASP \u0633\u06cc\u0634\u0646 \u0645\u06cc\u0646\u062c\u0645\u0646\u0679 \u0686\u06cc\u0679 \u0634\u06cc\u0679<\/u>\u0645\u0646\u0627\u0633\u0628 \u0631\u0633\u0627\u0626\u06cc \u06a9\u0646\u0679\u0631\u0648\u0644\u060c \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u06cc \u067e\u0627\u0644\u06cc\u0633\u06cc\u0648\u06ba\u060c \u0627\u0648\u0631 \u0679\u0648\u06a9\u0646 \u0644\u06cc\u06a9 \u062a\u062d\u0641\u0638 \u06a9\u06d2 \u0628\u063a\u06cc\u0631\u060c \u063a\u06cc\u0631 \u0645\u0637\u0644\u0648\u0628\u06c1 \u0644\u0646\u06a9\u0633 \u062e\u0648\u062f \u0628\u062e\u0648\u062f \u0645\u062d\u0641\u0648\u0638 \u0646\u06c1\u06cc\u06ba \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-expiry-and-cleanup-what-happens-when-a-transfer-expires\">\u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u0627 \u0627\u0648\u0631 \u0635\u0641\u0627\u0626\u06cc: \u062c\u0628 \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u06cc \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648 \u062c\u0627\u062a\u06cc \u06c1\u06d2 \u062a\u0648 \u06a9\u06cc\u0627 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u061f<\/h2>\n<p>\u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633\u0632 \u0688\u06cc\u0679\u0627 \u06a9\u06d2 \u067e\u06cc\u0679\u0627 \u0628\u0627\u0626\u0679\u0633 \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u0627\u0633 \u0644\u06cc\u06d2 \u0648\u06c1 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u062f\u06c1 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u062f\u06cc\u0648\u0627\u0644\u06cc\u06c1 \u06c1\u0648\u0626\u06d2 \u0628\u063a\u06cc\u0631 \u06c1\u0645\u06cc\u0634\u06c1 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0633\u0679\u0648\u0631 \u0646\u06c1\u06cc\u06ba \u06a9\u0631 \u0633\u06a9\u062a\u06cc\u06ba\u06d4 \u0648\u06c1 \u062c\u0627\u0631\u062d\u0627\u0646\u06c1 \u0644\u0627\u0626\u0641 \u0633\u0627\u0626\u06cc\u06a9\u0644 \u0645\u06cc\u0646\u062c\u0645\u0646\u0679 \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-time-to-live-ttl\">\u0679\u06cc \u0679\u06cc \u0627\u06cc\u0644 (\u0644\u0627\u0626\u0641 \u0679\u0627\u0626\u0645)<\/h3>\n<p>\u06c1\u0631 \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u0648 \u0679\u0627\u0626\u0645 \u0679\u0648 \u0644\u0627\u0626\u06cc\u0648 (TTL) \u06cc\u0627 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u0627 \u0679\u0627\u0626\u0645 \u0627\u0633\u0679\u06cc\u0645\u067e \u062a\u0641\u0648\u06cc\u0636 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u0633 \u0648\u0642\u062a \u06a9\u06d2 \u0628\u0639\u062f\u060c \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u0641\u0648\u0631\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u06d2 \u0634\u0646\u0627\u062e\u062a \u06a9\u0646\u0646\u062f\u06c1 \u06a9\u0648 \u0628\u0627\u0637\u0644 \u06a9\u0631 \u062f\u06d2 \u06af\u0627 \u062a\u0627\u06a9\u06c1 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0644\u0646\u06a9 \u0645\u0632\u06cc\u062f \u0631\u0633\u0627\u0626\u06cc \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u0646\u06c1 \u062f\u06d2\u06d4<\/p>\n<h3 id=\"heading-automated-cleanup-jobs\">\u062e\u0648\u062f\u06a9\u0627\u0631 \u0635\u0641\u0627\u0626\u06cc \u06a9\u06d2 \u06a9\u0627\u0645<\/h3>\n<p>\u0686\u0648\u0646\u06a9\u06c1 \u0644\u0646\u06a9 \u06a9\u06cc \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u0627 \u0627\u0648\u0631 \u062c\u0633\u0645\u0627\u0646\u06cc \u062d\u0630\u0641 \u06c1\u0648\u0646\u0627 \u0636\u0631\u0648\u0631\u06cc \u0646\u06c1\u06cc\u06ba \u06c1\u06d2 \u06a9\u06c1 \u0628\u06cc\u06a9 \u06af\u0631\u0627\u0624\u0646\u0688 \u0648\u0631\u06a9\u0631 \u06cc\u0627 \u0634\u06cc\u0688\u0648\u0644 \u06a9\u0631\u0648\u0646 \u062c\u0627\u0628 \u0627\u0635\u0644 \u0635\u0641\u0627\u0626\u06cc \u06a9\u0648 \u0633\u0646\u0628\u06be\u0627\u0644\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u06a9\u0627\u0631\u06a9\u0646 \u0648\u0642\u062a\u0627\u064b \u0641\u0648\u0642\u062a\u0627\u064b \u0688\u06cc\u0679\u0627 \u0628\u06cc\u0633 \u06a9\u0648 \u0627\u0633\u06a9\u06cc\u0646 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u062a\u0627\u06a9\u06c1 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u0648\u0627\u0644\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc\u0648\u06ba \u06a9\u0648 \u062a\u0644\u0627\u0634 \u06a9\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u06d2\u060c \u0627\u0646\u06c1\u06cc\u06ba \u0645\u0633\u062a\u0642\u0644 \u0637\u0648\u0631 \u067e\u0631 \u063a\u06cc\u0631 \u062f\u0633\u062a\u06cc\u0627\u0628 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0646\u0634\u0627\u0646 \u0632\u062f \u06a9\u0631\u06cc\u06ba\u060c \u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u062a\u06c1\u06c1 \u0633\u06d2 \u0645\u0644\u0679\u06cc \u06af\u06cc\u06af\u0627 \u0628\u0627\u0626\u0679 \u0633\u0627\u0626\u0632 \u0648\u0627\u0644\u06cc \u0627\u0634\u06cc\u0627\u0621 \u06a9\u0648 \u062d\u0630\u0641 \u06a9\u0631 \u062f\u06cc\u06ba\u060c \u0627\u0648\u0631 \u0622\u062e\u0631 \u0645\u06cc\u06ba \u067e\u0631\u0627\u0646\u06d2 \u0645\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u06c1\u0679\u0627 \u062f\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-download-limits\">\u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u06cc \u062d\u062f<\/h3>\n<p>\u06a9\u0686\u06be \u062e\u062f\u0645\u0627\u062a \u0627\u0633 \u062a\u0639\u062f\u0627\u062f \u06a9\u0648 \u0645\u062d\u062f\u0648\u062f \u06a9\u0631 \u0633\u06a9\u062a\u06cc \u06c1\u06cc\u06ba \u062c\u0628 \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0648\u0627\u0644\u0627 \u0641\u0627\u0626\u0644 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0631 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u06cc\u06a9 \u0628\u0627\u0631 \u062c\u0628 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688\u0632 \u06a9\u06cc \u062a\u0639\u062f\u0627\u062f \u0627\u06cc\u06a9 \u062d\u062f \u062a\u06a9 \u067e\u06c1\u0646\u0686 \u062c\u0627\u062a\u06cc \u06c1\u06d2\u060c \u062a\u0648 \u0644\u0646\u06a9 \u0628\u0627\u0644\u06a9\u0644 \u0627\u06cc\u0633\u0627 \u0628\u0631\u062a\u0627\u0624 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u06cc\u0633\u06d2 TTL \u06a9\u06cc \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648 \u06af\u0626\u06cc \u06c1\u0648\u060c \u063a\u06cc\u0631 \u0645\u062c\u0627\u0632 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0648 \u06a9\u0646\u0679\u0631\u0648\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u0627 \u0627\u06cc\u06a9 \u0628\u06c1\u062a\u0631\u06cc\u0646 \u0637\u0631\u06cc\u0642\u06c1 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-security-layers-protecting-files-during-transfer-and-storage\">\u062d\u0641\u0627\u0638\u062a\u06cc \u067e\u0631\u062a: \u0679\u0631\u0627\u0646\u0632\u0679 \u0627\u0648\u0631 \u0622\u0631\u0627\u0645 \u0645\u06cc\u06ba \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u06cc \u062d\u0641\u0627\u0638\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/h2>\n<p>\u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u06cc\u06a9\u06cc\u0648\u0631\u0679\u06cc \u06a9\u0628\u06be\u06cc \u0628\u06be\u06cc \u0627\u06cc\u06a9 \u062c\u0627\u062f\u0648\u0626\u06cc \u062e\u0635\u0648\u0635\u06cc\u062a \u06a9\u06d2 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4 \u0622\u067e \u06a9\u06d2 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0631\u0648\u06a9\u06d2 \u062c\u0627\u0646\u06d2 \u06cc\u0627 \u0686\u0648\u0631\u06cc \u06c1\u0648\u0646\u06d2 \u0633\u06d2 \u0628\u0686\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062f\u0641\u0627\u0639 \u06a9\u06cc \u0645\u062a\u0639\u062f\u062f \u067e\u0631\u062a\u0648\u06ba \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u0648\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-tls-encryption-in-transit\">\u0679\u0631\u0627\u0646\u0632\u0679 \u0645\u06cc\u06ba TLS \u062e\u0641\u06cc\u06c1 \u06a9\u0627\u0631\u06cc<\/h3>\n<p>\u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0645\u06a9\u0645\u0644 \u0637\u0648\u0631 \u067e\u0631 \u0627\u0646\u06a9\u0631\u067e\u0679 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2 \u06a9\u06cc\u0648\u0646\u06a9\u06c1 \u06cc\u06c1 \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0648\u0627\u0644\u06d2\u060c \u0688\u06cc\u0644\u06cc\u0648\u0631\u06cc \u0633\u0631\u0648\u0633 \u0627\u0648\u0631 \u0648\u0635\u0648\u0644 \u06a9\u0646\u0646\u062f\u06c1 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u0645\u0646\u062a\u0642\u0644 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4 \u062c\u062f\u06cc\u062f \u067e\u0644\u06cc\u0679 \u0641\u0627\u0631\u0645\u0632 HTTPS \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062c\u0648 \u0633\u062e\u062a TLS \u067e\u0631\u0648\u0679\u0648\u06a9\u0648\u0644 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u062a\u0639\u0627\u0648\u0646 \u06cc\u0627\u0641\u062a\u06c1 \u06c1\u06d2\u060c \u0627\u0633 \u0628\u0627\u062a \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u06a9\u06c1 \u06a9\u0648\u0626\u06cc \u0628\u06be\u06cc \u0688\u06cc\u0679\u0627 \u067e\u06cc\u06a9\u0679 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646\u06cc \u0631\u0627\u0633\u062a\u06d2 \u067e\u0631 \u0646\u06c1\u06cc\u06ba \u062c\u0627 \u0633\u06a9\u062a\u0627\u06d4<\/p>\n<p>\u0627\u0633 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba \u0645\u0632\u06cc\u062f \u062c\u0627\u0646\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1 \u0627\u0646\u0679\u0631\u067e\u0631\u0627\u0626\u0632 \u06a9\u06cc \u0633\u0637\u062d \u067e\u0631 \u0627\u0633 \u06a9\u06cc \u062a\u0634\u06a9\u06cc\u0644 \u06a9\u06cc\u0633\u06d2 \u06a9\u06cc \u062c\u0627\u062a\u06cc \u06c1\u06d2\u060c <u>NIST SP 800-52 \u0646\u0638\u0631\u062b\u0627\u0646\u06cc 2<\/u> TLS \u06a9\u0648 \u0644\u0627\u06af\u0648 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba \u0645\u06a9\u0645\u0644 \u0631\u06c1\u0646\u0645\u0627\u0626\u06cc \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-encryption-at-rest\">\u0628\u0627\u0642\u06cc \u0645\u06cc\u06ba \u062e\u0641\u06cc\u06c1 \u06a9\u0627\u0631\u06cc<\/h3>\n<p>\u0627\u06cc\u06a9 \u0628\u0627\u0631 \u062c\u0628 \u0641\u0627\u0626\u0644\u06cc\u06ba \u0633\u0679\u0648\u0631\u06cc\u062c \u06a9\u06cc \u067e\u0631\u062a \u067e\u0631 \u067e\u06c1\u0646\u0686 \u062c\u0627\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u062a\u0648 \u0622\u0631\u0627\u0645 \u0633\u06d2 \u0627\u0646\u06a9\u0631\u067e\u0634\u0646 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u06cc \u06c1\u06d2 \u06a9\u06c1 \u06cc\u06c1\u0627\u06ba \u062a\u06a9 \u06a9\u06c1 \u0627\u06af\u0631 \u06a9\u0648\u0626\u06cc \u0628\u062f\u0646\u06cc\u062a\u06cc \u067e\u0631 \u0645\u0628\u0646\u06cc \u0627\u062f\u0627\u06a9\u0627\u0631 \u062c\u0633\u0645\u0627\u0646\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0633\u0631\u0648\u0631 \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631 \u0644\u06cc\u062a\u0627 \u06c1\u06d2\u060c \u062a\u0648 \u0627\u0646\u06c1\u06cc\u06ba \u0635\u0631\u0641 \u0646\u0627\u0642\u0627\u0628\u0644 \u067e\u0691\u06be\u0627 \u06c1\u0648\u0627\u060c \u06af\u0691\u0628\u0691 \u0688\u06cc\u0679\u0627 \u0645\u0644\u06d2 \u06af\u0627\u06d4 \u06cc\u06c1 \u0646\u0648\u0679 \u06a9\u0631\u0646\u0627 \u0636\u0631\u0648\u0631\u06cc \u06c1\u06d2 \u06a9\u06c1 \u0628\u0627\u0642\u06cc \u0645\u06cc\u06ba \u062e\u0641\u06cc\u06c1 \u06a9\u0627\u0631\u06cc \u0627\u06cc\u0646\u0688 \u0679\u0648 \u0627\u06cc\u0646\u0688 \u0627\u0646\u06a9\u0631\u067e\u0634\u0646 \u062c\u06cc\u0633\u06cc \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4 \u0633\u0631\u0648\u0633 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0627\u0628 \u0628\u06be\u06cc \u0645\u0639\u06cc\u0627\u0631\u06cc \u062a\u0631\u062a\u06cc\u0628\u0627\u062a \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0627\u0646\u06a9\u0631\u067e\u0634\u0646 \u06a9\u06cc\u0632 \u06a9\u0627 \u0646\u0638\u0645 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-password-protected-links\">\u067e\u0627\u0633 \u0648\u0631\u0688 \u0633\u06d2 \u0645\u062d\u0641\u0648\u0638 \u0644\u0646\u06a9<\/h3>\n<p>\u063a\u06cc\u0631 \u0645\u062c\u0627\u0632 \u0635\u0627\u0631\u0641\u06cc\u0646 \u06a9\u0648 \u062f\u0631\u0633\u062a URLs \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u0633\u06d2 \u0631\u0648\u06a9\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u067e\u0627\u0633 \u0648\u0631\u0688 \u0634\u0627\u0645\u0644 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u0633 \u0633\u06d2 \u0627\u06cc\u06a9 \u062b\u0627\u0646\u0648\u06cc \u0631\u0633\u0627\u0626\u06cc \u06a9\u0646\u0679\u0631\u0648\u0644 \u067e\u0631\u062a \u0628\u0646\u062a\u06cc \u06c1\u06d2 \u062c\u0633\u06d2 \u0633\u0631\u0648\u0631 \u06a9\u06d2 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0633\u06d2 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0628\u0627\u0632\u06cc\u0627\u0641\u062a \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u06a9\u0648\u0634\u0634 \u06a9\u0631\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u0635\u0627\u0641 \u06a9\u0631\u0646\u0627 \u0636\u0631\u0648\u0631\u06cc \u06c1\u06d2\u06d4 \u0627\u0636\u0627\u0641\u06cc \u062a\u062d\u0641\u0638 \u06a9\u06cc \u062e\u0635\u0648\u0635\u06cc\u0627\u062a\u060c \u062c\u06cc\u0633\u06d2 \u06a9\u06c1 \u062e\u0648\u062f\u06a9\u0627\u0631 \u067e\u0627\u0633 \u0648\u0631\u0688 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u0644\u06af\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0634\u0631\u062d \u0645\u062d\u062f\u0648\u062f\u060c \u0627\u0633 \u067e\u0631\u062a \u06a9\u06cc \u062a\u0627\u062b\u06cc\u0631 \u06a9\u0648 \u0628\u0631\u0642\u0631\u0627\u0631 \u0631\u06a9\u06be\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-real-world-examples-how-popular-file-transfer-services-handle-file-sharing\">\u062d\u0642\u06cc\u0642\u06cc \u0632\u0646\u062f\u06af\u06cc \u06a9\u06cc \u0645\u062b\u0627\u0644: \u06a9\u0633 \u0637\u0631\u062d \u0645\u0642\u0628\u0648\u0644 \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633\u0632 \u0641\u0627\u0626\u0644 \u0634\u06cc\u0626\u0631\u0646\u06af \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u06d4<\/h2>\n<p>\u06cc\u06c1 \u062f\u06cc\u06a9\u06be\u0646\u0627 \u06a9\u06c1 \u0645\u0648\u062c\u0648\u062f\u06c1 \u06a9\u0645\u067e\u0646\u06cc\u0627\u06ba \u0627\u0646 \u062a\u0635\u0648\u0631\u0627\u062a \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u0646\u0627\u0641\u0630 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba \u0646\u0638\u0631\u06cc\u06c1 \u0627\u0648\u0631 \u0639\u0645\u0644 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u0641\u0631\u0642 \u06a9\u0648 \u062e\u062a\u0645 \u06a9\u0631\u0646\u06d2 \u0645\u06cc\u06ba \u0645\u062f\u062f \u06a9\u0631 \u0633\u06a9\u062a\u06cc \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-wetransfer-temporary-transfers-and-password-protection\">WeTransfer: \u0639\u0627\u0631\u0636\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc \u0627\u0648\u0631 \u067e\u0627\u0633 \u0648\u0631\u0688 \u062a\u062d\u0641\u0638<\/h3>\n<p>WeTransfer \u0645\u06a9\u0645\u0644 \u0637\u0648\u0631 \u067e\u0631 \u0639\u0627\u0631\u0636\u06cc \u0627\u0634\u062a\u0631\u0627\u06a9 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0644\u0646\u06a9\u0633 \u06a9\u06d2 \u0627\u0631\u062f \u06af\u0631\u062f \u0628\u0646\u0627\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4 \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u06cc \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u06cc \u0633\u062e\u062a \u062a\u0627\u0631\u06cc\u062e\u06cc\u06ba \u06c1\u0648\u062a\u06cc \u06c1\u06cc\u06ba \u0627\u0648\u0631 \u067e\u0631\u06cc\u0645\u06cc\u0645 \u0635\u0627\u0631\u0641\u06cc\u0646 \u067e\u0627\u0633 \u0648\u0631\u0688 \u06a9\u06d2 \u062a\u062d\u0641\u0638 \u06a9\u0648 \u0646\u0627\u0641\u0630 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0633\u06cc\u06a9\u06cc\u0648\u0631\u0679\u06cc \u062f\u0633\u062a\u0627\u0648\u06cc\u0632\u0627\u062a \u06a9\u06d2 \u0645\u0637\u0627\u0628\u0642\u060c \u0627\u0633 \u06a9\u06d2 \u0633\u0631\u0648\u0631\u0632 \u067e\u0631 \u0645\u0648\u062c\u0648\u062f \u0641\u0627\u0626\u0644\u06cc\u06ba \u0679\u0631\u0627\u0646\u0633\u0645\u06cc\u0634\u0646 \u06a9\u06d2 \u062f\u0648\u0631\u0627\u0646 \u0645\u0639\u06cc\u0627\u0631\u06cc TLS \u0627\u0646\u06a9\u0631\u067e\u0634\u0646 \u0627\u0648\u0631 \u0628\u0627\u0642\u06cc \u0645\u06cc\u06ba AES-256 \u0627\u0646\u06a9\u0631\u067e\u0634\u0646 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0645\u062d\u0641\u0648\u0638 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-dropbox-transfer-sending-files-without-collaboration\">\u0688\u0631\u0627\u067e \u0628\u0627\u06a9\u0633 \u0679\u0631\u0627\u0646\u0633\u0641\u0631: \u0628\u063a\u06cc\u0631 \u062a\u0639\u0627\u0648\u0646 \u06a9\u06d2 \u0641\u0627\u0626\u0644\u06cc\u06ba \u0628\u06be\u06cc\u062c\u06cc\u06ba\u06d4<\/h3>\n<p>\u0645\u0639\u06cc\u0627\u0631\u06cc \u0645\u0634\u062a\u0631\u06a9\u06c1 \u0641\u0648\u0644\u0688\u0631\u0632 \u06a9\u06d2 \u0628\u0631\u0639\u06a9\u0633\u060c \u0688\u0631\u0627\u067e \u0628\u0627\u06a9\u0633 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0627\u0633\u0679\u06cc\u0646\u0688 \u062a\u0646\u06c1\u0627 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0644\u0646\u06a9\u0633 \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0648\u0635\u0648\u0644 \u06a9\u0646\u0646\u062f\u06af\u0627\u0646 \u06a9\u0648 \u067e\u06d2 \u0644\u0648\u0688 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0688\u0631\u0627\u067e \u0628\u0627\u06a9\u0633 \u0627\u06a9\u0627\u0624\u0646\u0679 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0642\u0627\u0628\u0644 \u062a\u0631\u062a\u06cc\u0628 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u06cc \u062a\u0627\u0631\u06cc\u062e\u0648\u06ba\u060c \u067e\u0627\u0633 \u0648\u0631\u0688\u0632\u060c \u0627\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u062c\u0633 \u0645\u06cc\u06ba \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u06a9\u06d2 \u0645\u062e\u0635\u0648\u0635 \u0633\u0628\u0633\u06a9\u0631\u067e\u0634\u0646 \u067e\u0644\u0627\u0646 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0637\u06d2 \u0634\u062f\u06c1 \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0633\u0627\u0626\u0632 \u06a9\u06cc \u0632\u06cc\u0627\u062f\u06c1 \u0633\u06d2 \u0632\u06cc\u0627\u062f\u06c1 \u062d\u062f \u06c1\u0648\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-send-anywhere-direct-transfers-and-temporary-links\">\u06a9\u06c1\u06cc\u06ba \u0628\u06be\u06cc \u0628\u06be\u06cc\u062c\u06cc\u06ba: \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0645\u0646\u062a\u0642\u0644\u06cc \u0627\u0648\u0631 \u0639\u0627\u0631\u0636\u06cc \u0644\u0646\u06a9\u0633<\/h3>\n<p>\u06a9\u06c1\u06cc\u06ba \u0628\u06be\u06cc \u0628\u06be\u06cc\u062c\u06cc\u06ba \u0627\u06cc\u06a9 \u0632\u0628\u0631\u062f\u0633\u062a \u06c1\u0627\u0626\u0628\u0631\u0688 \u0637\u0631\u06cc\u0642\u06c1 \u0627\u062e\u062a\u06cc\u0627\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0686\u06be \u06c1\u0646\u062f\u0633\u0648\u06ba \u06a9\u06cc \u06a9\u0644\u06cc\u062f \u06a9\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1 \u06a9\u0627\u0631 \u062d\u0642\u06cc\u0642\u06cc \u0648\u0642\u062a \u0645\u06cc\u06ba 10 \u0645\u0646\u0679 \u06a9\u06d2 \u0627\u0646\u062f\u0631 \u0627\u06cc\u06a9 \u0648\u0642\u062a \u06a9\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u06a9\u062b\u0631 \u067e\u06cc\u0626\u0631 \u0679\u0648 \u067e\u06cc\u0626\u0631 \u06a9\u0646\u06a9\u0634\u0646 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u0633 \u06a9\u06d2 \u0628\u0631\u0639\u06a9\u0633\u060c \u0645\u0639\u06cc\u0627\u0631\u06cc \u0645\u0634\u062a\u0631\u06a9\u06c1 \u0644\u0646\u06a9 \u0622\u067e\u0634\u0646 \u06a9\u0648 \u0633\u0631\u0648\u0631 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u0633\u06d2 \u0628\u062f\u0644 \u062f\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2 \u062c\u06c1\u0627\u06ba \u0622\u067e \u0641\u0627\u0626\u0644\u06cc\u06ba \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u0627\u0648\u0631 \u0644\u0646\u06a9 \u06a9\u0648 48 \u06af\u06be\u0646\u0679\u06d2 \u062a\u06a9 \u062f\u0631\u0633\u062a \u0631\u06a9\u06be\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-filemail-large-transfers-and-expiration-controls\">\u0641\u0627\u0626\u0644 \u0645\u06cc\u0644: \u0628\u0691\u06d2 \u067e\u06cc\u0645\u0627\u0646\u06d2 \u067e\u0631 \u0688\u06cc\u0644\u06cc\u0648\u0631\u06cc \u0627\u0648\u0631 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u0627 \u06a9\u0646\u0679\u0631\u0648\u0644<\/h3>\n<p>\u0637\u0627\u0642\u062a\u0648\u0631 \u0627\u06cc \u0645\u06cc\u0644 \u0627\u0648\u0631 \u0642\u0627\u0628\u0644 \u0627\u0634\u062a\u0631\u0627\u06a9 \u0644\u0646\u06a9 \u0688\u06cc\u0644\u06cc\u0648\u0631\u06cc \u06a9\u06d2 \u0627\u062e\u062a\u06cc\u0627\u0631\u0627\u062a \u06a9\u06d2 \u0633\u0627\u062a\u06be\u060c \u0641\u0627\u0626\u0644 \u0645\u06cc\u0644 \u0628\u0691\u06d2 \u067e\u06d2 \u0644\u0648\u0688\u0632 \u06a9\u0648 \u0622\u0633\u0627\u0646\u06cc \u0633\u06d2 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0627\u0646\u062a\u06c1\u0627\u0626\u06cc \u0642\u0627\u0628\u0644 \u062a\u0631\u062a\u06cc\u0628 \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u06a9\u06d2 \u06a9\u0646\u0679\u0631\u0648\u0644 \u0627\u0648\u0631 \u0633\u062e\u062a \u067e\u0627\u0633 \u0648\u0631\u0688 \u062a\u062d\u0641\u0638 \u067e\u06cc\u0634 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u0641\u062a \u0633\u0631\u0648\u0633 \u0679\u0627\u0626\u0631 \u0641\u06cc \u0627\u0644\u062d\u0627\u0644 5GB \u06a9\u06cc \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u06cc \u062d\u062f \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u0635\u0641\u0627\u0626\u06cc \u0634\u0631\u0648\u0639 \u06c1\u0648\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u0622\u067e \u06a9\u06d2 \u0688\u06cc\u0679\u0627 \u06a9\u0648 7 \u062f\u0646 \u062a\u06a9 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u062a\u06a9 \u0645\u062d\u0641\u0648\u0638 \u0631\u06a9\u06be\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-hands-on-build-a-minimal-chunked-file-uploader-using-nodejs\">\u06c1\u06cc\u0646\u0688 \u0622\u0646: Node.js \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u06cc\u06a9 \u06a9\u0645 \u0633\u06d2 \u06a9\u0645 \u062d\u0635\u06c1 \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688\u0631 \u0628\u0646\u0627\u0646\u0627<\/h2>\n<p>\u062a\u06be\u06cc\u0648\u0631\u06cc \u06a9\u0648 \u0633\u0645\u062c\u06be\u0646\u0627 \u0628\u06c1\u062a \u0627\u0686\u06be\u0627 \u06c1\u06d2\u060c \u0644\u06cc\u06a9\u0646 \u0627\u0633\u06d2 \u062e\u0648\u062f \u0628\u0646\u0627\u0646\u0627 \u062b\u0627\u0628\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u06cc\u06c1 \u0639\u0645\u0644\u06cc \u0637\u0648\u0631 \u067e\u0631 \u06a9\u06cc\u0633\u06d2 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0622\u0626\u06cc\u06d2 \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u0627\u06cc\u067e\u0644\u06cc \u06a9\u06cc\u0634\u0646 \u0628\u0646\u0627\u062a\u06d2 \u06c1\u06cc\u06ba \u062c\u0648 \u0628\u0631\u0627\u0624\u0632\u0631 \u0645\u06cc\u06ba \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0686\u06be\u0648\u0679\u06d2 \u062d\u0635\u0648\u06ba \u0645\u06cc\u06ba \u062a\u0648\u0691 \u062f\u06cc\u062a\u06cc \u06c1\u06d2\u060c \u0627\u0646\u06c1\u06cc\u06ba Node.js \u0633\u0631\u0648\u0631 \u067e\u0631 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u060c \u0627\u0648\u0631 \u067e\u06be\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0691 \u062c\u0627\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-step-1-set-up-the-nodejs-project\">\u0645\u0631\u062d\u0644\u06c1 1: \u0627\u067e\u0646\u0627 Node.js \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u062a\u0631\u062a\u06cc\u0628 \u062f\u06cc\u06ba\u06d4<\/h3>\n<p>\u0622\u0646\u06d2 \u0648\u0627\u0644\u06cc \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0679\u06a9\u0691\u0648\u06ba \u06a9\u0648 \u067e\u0631\u0648\u0633\u06cc\u0633 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0622\u067e \u06a9\u0648 Node.js\u060c \u0627\u06cc\u06a9\u0633\u067e\u0631\u06cc\u0633 \u0641\u0631\u06cc\u0645 \u0648\u0631\u06a9\u060c \u0627\u0648\u0631 \u0645\u0644\u0679\u0631 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u0648\u06af\u06cc\u06d4 \u0628\u0644\u0679 \u0627\u0646 fs \u0645\u0627\u0688\u06cc\u0648\u0644 \u0641\u0627\u0626\u0644 \u0622\u067e\u0631\u06cc\u0634\u0646\u0632 \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u067e\u06c1\u0644\u06d2 \u0646\u0648\u0688 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0628\u0646\u0627\u0626\u06cc\u06ba \u0627\u0648\u0631 \u0645\u0637\u0644\u0648\u0628\u06c1 \u0627\u0646\u062d\u0635\u0627\u0631 \u0627\u0646\u0633\u0679\u0627\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-shell\">mkdir file-transfer\ncd file-transfer\nnpm init -y\nnpm install express multer\n<\/code><\/pre>\n<h3 id=\"heading-step-2-divide-the-file-into-smaller-chunks\">\u0645\u0631\u062d\u0644\u06c1 2: \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0686\u06be\u0648\u0679\u06d2 \u0679\u06a9\u0691\u0648\u06ba \u0645\u06cc\u06ba \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u06cc\u06ba\u06d4<\/h3>\n<p>\u067e\u06c1\u0644\u06d2 <code>public<\/code> \u0627\u06af\u0631 \u0688\u0627\u0626\u0631\u06cc\u06a9\u0679\u0631\u06cc \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u0645\u0648\u062c\u0648\u062f \u0646\u06c1\u06cc\u06ba \u06c1\u06d2 \u062a\u0648 \u0627\u0633\u06d2 \u0627\u067e\u0646\u06d2 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0641\u0648\u0644\u0688\u0631 \u0645\u06cc\u06ba \u0634\u0627\u0645\u0644 \u06a9\u0631\u06cc\u06ba\u06d4 \u067e\u06be\u0631\u060c <code>upload.js<\/code> \u0627\u0633 \u0688\u0627\u0626\u0631\u06cc\u06a9\u0679\u0631\u06cc \u06a9\u06d2 \u0627\u0646\u062f\u0631\u06d4 \u06c1\u0645 \u0628\u0631\u0627\u0624\u0632\u0631 \u06a9\u0627 JavaScript File API \u0627\u0648\u0631 \u0627\u0633 \u06a9\u0627 API \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u06af\u06d2\u06d4 <code>slice()<\/code> \u0627\u067e\u0646\u06d2 \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631 \u06a9\u06cc RAM \u0645\u06cc\u06ba \u067e\u0648\u0631\u06d2 5GB \u067e\u06d2 \u0644\u0648\u0688 \u06a9\u0648 \u0644\u0648\u0688 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0627\u06cc\u06a9 \u0686\u06be\u0648\u0679\u06d2 \u0633\u06d2 \u062d\u0635\u06d2 \u06a9\u0648 \u067e\u0691\u06be\u0646\u06d2 \u06a9\u0627 \u0627\u06cc\u06a9 \u0637\u0631\u06cc\u0642\u06c1\u06d4<\/p>\n<pre><code class=\"language-javascript\">const chunkSize = 5 * 1024 * 1024;\n\nasync function uploadFile(file) {\n    const totalChunks = Math.ceil(file.size \/ chunkSize);\n    const uploadId = crypto.randomUUID();\n\n    for (let index = 0; index < totalChunks; index++) {\n        const chunk = file.slice(\n            index * chunkSize,\n            (index + 1) * chunkSize\n        );\n\n        const formData = new FormData();\n        formData.append(\"chunk\", chunk);\n\n        const response = await fetch(\n            `\/upload\/${uploadId}\/${index}\/${totalChunks}`,\n            {\n                method: \"POST\",\n                body: formData\n            }\n        );\n\n        if (!response.ok) {\n            throw new Error(`Chunk ${index} failed to upload`);\n        }\n    }\n\n    const response = await fetch(`\/complete\/${uploadId}`, {\n        method: \"POST\",\n        headers: { \"Content-Type\": \"application\/json\" },\n        body: JSON.stringify({\n            totalChunks,\n            filename: file.name\n        })\n    });\n\n    if (!response.ok) {\n        throw new Error(\"File reassembly failed\");\n    }\n}\n<\/code><\/pre>\n<p>\u06cc\u06c1\u0627\u06ba\u060c <code>crypto.randomUUID()<\/code> \u0627\u067e\u0646\u06d2 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0645\u0646\u0641\u0631\u062f ID \u0628\u0646\u0627\u0626\u06cc\u06ba\u06d4 \u0628\u0631\u0627\u0624\u0632\u0631 \u06c1\u0631 \u0627\u06cc\u06a9 \u062d\u0635\u06c1 \u06a9\u0648 \u0627\u0646\u0641\u0631\u0627\u062f\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0628\u06be\u06cc\u062c\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u06cc\u06a9 \u06c1\u06cc ID \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u062a\u0645\u0627\u0645 \u0679\u06a9\u0691\u0648\u06ba \u06a9\u0648 \u0627\u0635\u0644 \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u062c\u0648\u0691\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-step-3-create-an-upload-endpoint-in-express\">\u0645\u0631\u062d\u0644\u06c1 3: \u0627\u06cc\u06a9\u0633\u067e\u0631\u06cc\u0633 \u0645\u06cc\u06ba \u0627\u067e \u0644\u0648\u0688 \u0627\u06cc\u0646\u0688 \u067e\u0648\u0627\u0626\u0646\u0679 \u0628\u0646\u0627\u0626\u06cc\u06ba<\/h3>\n<p>\u0633\u0631\u0648\u0631 \u06a9\u06cc \u0637\u0631\u0641 (<code>server.js<\/code>)\u060c \u06c1\u0631 \u0627\u06cc\u06a9 \u062d\u0635\u06c1 \u06a9\u0648 \u0648\u0635\u0648\u0644 \u06a9\u0631\u0646\u06d2 \u0627\u0648\u0631 \u0639\u0627\u0631\u0636\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0627\u062e\u062a\u062a\u0627\u0645\u06cc \u0646\u0642\u0637\u06c1 \u062f\u0631\u06a9\u0627\u0631 \u06c1\u06d2\u06d4 \u0633\u0631\u0648\u0631 \u0627\u067e \u0644\u0648\u0688 ID \u0627\u0648\u0631 chunk index \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0633 \u0628\u0627\u062a \u06a9\u0627 \u062a\u0639\u06cc\u0646 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1 \u06c1\u0631 \u0627\u06cc\u06a9 \u062d\u0635\u06c1 \u06a9\u06c1\u0627\u06ba \u0633\u06d2 \u062a\u0639\u0644\u0642 \u0631\u06a9\u06be\u062a\u0627 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0679\u06a9\u0691\u0648\u06ba \u06a9\u06cc \u06a9\u0644 \u062a\u0639\u062f\u0627\u062f \u0627\u067e \u0644\u0648\u0688 \u06a9\u06cc \u062a\u0648\u062b\u06cc\u0642 \u0645\u06cc\u06ba \u0645\u062f\u062f \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 \u06c1\u0645 \u0622\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0645\u0644\u0679\u06cc \u067e\u0627\u0631\u0679 \u0641\u0627\u0631\u0645 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u067e\u0627\u0631\u0633 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0644\u0679\u0631 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-javascript\">const express = require(\"express\");\nconst multer = require(\"multer\");\nconst fs = require(\"fs\");\nconst path = require(\"path\");\nconst { pipeline } = require(\"stream\/promises\");\n\nconst app = express();\n\napp.use(express.static(path.join(__dirname, \"public\")));\n\nconst chunksDir = path.join(__dirname, \"chunks\");\nconst tempDir = path.join(chunksDir, \"temp\");\n\nfs.mkdirSync(tempDir, { recursive: true });\n\nconst upload = multer({\n    dest: tempDir,\n    limits: { fileSize: 5 * 1024 * 1024 }\n});\n\napp.post(\n    \"\/upload\/:id\/:index\/:total\",\n    upload.single(\"chunk\"),\n    async (req, res) => {\n        try {\n            const { id, index, total } = req.params;\n\n            if (!req.file) {\n                return res.status(400).send(\"No chunk received\");\n            }\n\n            if (\n                !\/^[a-f0-9-]{36}$\/i.test(id) ||\n                !Number.isInteger(Number(index)) ||\n                !Number.isInteger(Number(total)) ||\n                Number(total) < 1 ||\n                Number(total) > 10000 ||\n                Number(index) < 0 ||\n                Number(index) >= Number(total)\n            ) {\n                return res.status(400).send(\"Invalid upload details\");\n            }\n\n            const folder = path.join(chunksDir, id);\n\n            await fs.promises.mkdir(folder, {\n                recursive: true\n            });\n\n            await fs.promises.rename(\n                req.file.path,\n                path.join(folder, `${index}.part`)\n            );\n\n            res.send(\"Chunk received\");\n\n        } catch (error) {\n            res.status(500).send(\"Upload failed\");\n        }\n    }\n);\n<\/code><\/pre>\n<p>\u0633\u0631\u0648\u0631 \u06c1\u0631 \u0627\u06cc\u06a9 \u0679\u06a9\u0691\u06d2 \u06a9\u0648 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u067e \u0644\u0648\u0688 ID \u0627\u0648\u0631 \u0627\u0634\u0627\u0631\u06cc\u06c1 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062a\u0627\u06a9\u06c1 \u0627\u067e \u0644\u0648\u0688 \u0645\u06a9\u0645\u0644 \u06c1\u0648\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f \u0627\u0646\u0641\u0631\u0627\u062f\u06cc \u062d\u0635\u0648\u06ba \u06a9\u06cc \u0634\u0646\u0627\u062e\u062a \u0627\u0648\u0631 \u0628\u0627\u0632\u06cc\u0627\u0641\u062a \u06a9\u06cc \u062c\u0627 \u0633\u06a9\u06d2\u06d4<\/p>\n<h3 id=\"heading-step-4-reassemble-the-original-file\">\u0645\u0631\u062d\u0644\u06c1 4: \u0627\u0635\u0644 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0648\u0691\u06cc\u06ba\u06d4<\/h3>\n<p>\u0627\u06cc\u06a9 \u0628\u0627\u0631 \u062c\u0628 \u06a9\u0644\u0627\u0626\u0646\u0679 \u0627\u0633 \u0628\u0627\u062a \u06a9\u06cc \u062a\u0635\u062f\u06cc\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u062a\u0645\u0627\u0645 \u0679\u06a9\u0691\u0648\u06ba \u06a9\u0648 \u0628\u06be\u06cc\u062c \u062f\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u060c \u062d\u062a\u0645\u06cc \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0648\u0691\u0646\u06d2 \u06a9\u0627 \u0631\u0627\u0633\u062a\u06c1 \u0634\u0631\u0648\u0639 \u06c1\u0648 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0633\u0631\u0648\u0631 \u067e\u06c1\u0644\u06d2 \u0641\u0631\u0636 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u062a\u0645\u0627\u0645 \u0645\u062a\u0648\u0642\u0639 \u062d\u0635\u06d2 \u06c1\u06cc\u06ba\u06d4 <code>chunks\/<\/code> \u0688\u0627\u0626\u0631\u06cc\u06a9\u0679\u0631\u06cc \u067e\u06be\u0631 \u0679\u06a9\u0691\u0648\u06ba \u06a9\u0648 \u062a\u0631\u062a\u06cc\u0628 \u0648\u0627\u0631 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u067e\u0691\u06be\u06cc\u06ba: <code>fs.createReadStream()<\/code> \u0627\u0633\u06cc \u0622\u0624\u0679 \u067e\u0679 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0644\u06a9\u06be\u06cc\u06ba: <code>fs.createWriteStream()<\/code>. \u067e\u06c1\u0644\u0627 \u062d\u0635\u06c1 \u0627\u06cc\u06a9 \u0641\u0627\u0626\u0644 \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u0633 \u06a9\u06d2 \u0628\u0639\u062f \u06a9\u06d2 \u0679\u06a9\u0691\u06d2 \u0641\u0627\u0626\u0644 \u0645\u06cc\u06ba \u0634\u0627\u0645\u0644 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u062c\u0628 \u0627\u0635\u0644 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0645\u0639 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0633\u0631\u0648\u0631 \u062c\u06af\u06c1 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0639\u0627\u0631\u0636\u06cc \u0679\u06a9\u0691\u0648\u06ba \u06a9\u0648 \u062d\u0630\u0641 \u06a9\u0631 \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<pre><code class=\"language-javascript\">const uploadsDir = path.join(__dirname, \"uploads\");\n\nfs.mkdirSync(uploadsDir, { recursive: true });\n\napp.use(express.json());\n\napp.post(\"\/complete\/:id\", async (req, res) => {\n    try {\n        const { id } = req.params;\n        const { totalChunks, filename } = req.body;\n\n        if (\n            !\/^[a-f0-9-]{36}$\/i.test(id) ||\n            !Number.isInteger(totalChunks) ||\n            totalChunks < 1 ||\n            totalChunks > 10000 ||\n            typeof filename !== \"string\"\n        ) {\n            return res.status(400).send(\"Invalid upload details\");\n        }\n\n        const folder = path.join(chunksDir, id);\n\n        for (let i = 0; i < totalChunks; i++) {\n            const chunkPath = path.join(folder, `${i}.part`);\n\n            if (!fs.existsSync(chunkPath)) {\n                return res.status(400).send(`Missing chunk ${i}`);\n            }\n        }\n\n        const safeName =\n            path.basename(filename).replace(\/[^\\w.-]\/g, \"_\") ||\n            \"upload.bin\";\n\n        const outputPath = path.join(\n            uploadsDir,\n            `${id}-${safeName}`\n        );\n\n        await fs.promises.rm(outputPath, { force: true });\n\n        for (let i = 0; i < totalChunks; i++) {\n            const chunkPath = path.join(folder, `${i}.part`);\n\n            await pipeline(\n                fs.createReadStream(chunkPath),\n                fs.createWriteStream(outputPath, {\n                    flags: i === 0 ? \"w\" : \"a\"\n                })\n            );\n        }\n\n        await fs.promises.rm(folder, {\n            recursive: true,\n            force: true\n        });\n\n        res.json({\n            message: \"File assembled successfully\"\n        });\n\n    } catch (error) {\n        res.status(500).send(\"Reassembly failed\");\n    }\n});\n<\/code><\/pre>\n<p>\u0622\u062e\u0631 \u0645\u06cc\u06ba\u060c \u0646\u06cc\u0686\u06d2 \u062f\u0631\u062c \u0630\u06cc\u0644 \u06a9\u0648\u0688 \u0634\u0627\u0645\u0644 \u06a9\u0631\u06cc\u06ba: <code>server.js<\/code> \u0627\u06cc\u06a9\u0633\u067e\u0631\u06cc\u0633 \u0633\u0631\u0648\u0631 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2:<\/p>\n<pre><code class=\"language-javascript\">app.listen(3000, () => {\n    console.log(\"Server running at http:\/\/localhost:3000\");\n});\n<\/code><\/pre>\n<h3 id=\"heading-step-5-test-the-upload\">\u0645\u0631\u062d\u0644\u06c1 5: \u0679\u06cc\u0633\u0679 \u0627\u067e \u0644\u0648\u0688<\/h3>\n<p>\u0686\u0644\u0627 \u06a9\u0631 \u0633\u0631\u0648\u0631 \u0634\u0631\u0648\u0639 \u06a9\u0631\u06cc\u06ba: <code>node server.js<\/code> \u0622\u067e \u06a9\u06d2 \u0679\u0631\u0645\u06cc\u0646\u0644 \u0645\u06cc\u06ba\u06d4 \u067e\u06be\u0631 \u0627\u0633\u06d2 \u06a9\u06be\u0648\u0644\u06cc\u06ba\u06d4 <code>http:\/\/localhost:3000<\/code> \u0627\u067e\u0646\u06d2 \u0628\u0631\u0627\u0624\u0632\u0631 \u0645\u06cc\u06ba \u062f\u0631\u0645\u06cc\u0627\u0646\u06d2 \u062f\u0631\u062c\u06d2 \u06a9\u06cc \u0648\u06cc\u0688\u06cc\u0648 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06a9\u06d2 \u0627\u067e\u0646\u06d2 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06cc \u062c\u0627\u0646\u0686 \u06a9\u0631\u06cc\u06ba\u06d4 \u0627\u067e\u0646\u06d2 \u0628\u0631\u0627\u0624\u0632\u0631 \u06a9\u0627 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u0679\u06cc\u0628 \u06a9\u06be\u0648\u0644\u06cc\u06ba \u06a9\u06c1 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0679\u06a9\u0691\u0648\u06ba \u0645\u06cc\u06ba \u06a9\u06cc\u0633\u06d2 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u062a\u0631\u062a\u06cc\u0628 \u0648\u0627\u0631 \u0645\u0646\u062a\u0642\u0644 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0622\u062e\u0631 \u0645\u06cc\u06ba\u060c \u0627\u067e\u0646\u06d2 \u0633\u0631\u0648\u0631 \u06a9\u0648 \u0686\u06cc\u06a9 \u06a9\u0631\u06cc\u06ba: <code>uploads\/<\/code> \u0688\u0627\u0626\u0631\u06cc\u06a9\u0679\u0631\u06cc \u0627\u0633\u0645\u0628\u0644 \u0634\u062f\u06c1 \u0641\u0627\u0626\u0644 \u06a9\u0627 \u0628\u0627\u0626\u0679 \u0633\u0627\u0626\u0632 \u0648\u06c1\u06cc \u06c1\u0648\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2 \u062c\u0648 \u0627\u0635\u0644 \u0627\u0648\u0631 \u0635\u062d\u06cc\u062d \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u06a9\u06be\u0644\u0627 \u06c1\u0648\u06d4<\/p>\n<p>\u0628\u0646\u0627\u0646\u0627 <code>public\/index.html<\/code>:<\/p>\n<pre><code class=\"language-html\">\n\n\n    <title>File Uploader<\/title>\n\n\n    <h2>Upload a File<\/h2>\n\n    <input type=\"file\" id=\"fileInput\"\/>\n    <button id=\"uploadButton\">Upload<\/button>\n\n    \n\n    <![CDATA[\n        const button = document.getElementById(\"uploadButton\");\n        const fileInput = document.getElementById(\"fileInput\");\n        const status = document.getElementById(\"status\");\n\n        button.addEventListener(\"click\", async () => {\n            const file = fileInput.files[0];\n\n            if (!file) {\n                status.textContent = \"Select a file first.\";\n                return;\n            }\n\n            button.disabled = true;\n\n            try {\n                await uploadFile(file);\n                status.textContent = \"Upload completed!\";\n            } catch (error) {\n                status.textContent = error.message;\n            } finally {\n                button.disabled = false;\n            }\n        });\n    ]]><\/script>\n\n\n<\/code><\/pre>\n<p><strong>\u0645\u06cc\u0645\u0648:<\/strong> \u06cc\u06c1 \u0646\u0641\u0627\u0630 \u062d\u0635\u06c1 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u0627\u0648\u0631 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0648\u0691\u0646\u06d2 \u06a9\u06d2 \u0628\u0646\u06cc\u0627\u062f\u06cc \u0645\u06cc\u06a9\u0627\u0646\u0632\u0645 \u06a9\u0648 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0634\u0631\u0648\u0639 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0627\u067e \u0644\u0648\u0688\u0632\u060c \u0686\u06cc\u06a9\u0633\u0645 \u06a9\u06cc \u062a\u0635\u062f\u06cc\u0642\u060c \u062a\u0635\u062f\u06cc\u0642\u060c \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c\u060c \u06cc\u0627 \u0639\u0627\u0631\u0636\u06cc \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0644\u0646\u06a9\u0633 \u06a9\u0648 \u0644\u0627\u06af\u0648 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u067e\u0631\u0648\u0688\u06a9\u0634\u0646 \u0644\u06cc\u0648\u0644 \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0633\u0631\u0648\u0633\u0632 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0628\u06be\u06cc \u0645\u0633\u062a\u0642\u0644 \u0627\u067e \u0644\u0648\u0688 \u0627\u0633\u0679\u06cc\u0679\u060c \u0627\u06cc\u06a9\u0633\u06cc\u0633 \u06a9\u0646\u0679\u0631\u0648\u0644\u060c \u062f\u0648\u0628\u0627\u0631\u06c1 \u06c1\u06cc\u0646\u0688\u0644\u0646\u06af \u06a9\u06cc \u06a9\u0648\u0634\u0634\u060c \u0633\u0627\u0644\u0645\u06cc\u062a \u06a9\u06cc \u062c\u0627\u0646\u0686\u060c \u0627\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u0635\u0641\u0627\u0626\u06cc \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u0648\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-conclusion-a-simple-link-hides-a-lot-of-engineering\">\u0646\u062a\u06cc\u062c\u06c1: \u0633\u0627\u062f\u06c1 \u0644\u0646\u06a9\u0633 \u0645\u06cc\u06ba \u0628\u06c1\u062a \u0633\u0627\u0631\u06cc \u0627\u0646\u062c\u06cc\u0646\u0626\u0631\u0646\u06af \u0686\u06be\u067e\u06cc \u06c1\u0648\u0626\u06cc \u06c1\u06d2\u06d4<\/h2>\n<p>\u0628\u0691\u06cc \u0641\u0627\u0626\u0644\u06cc\u06ba \u0628\u06be\u06cc\u062c\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0633\u0627\u062a\u06be \u06a9\u0627\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u062a\u0639\u062f\u062f \u0639\u0645\u0644 \u062f\u0631\u06a9\u0627\u0631 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0628\u0631\u0627\u0624\u0632\u0631 \u0645\u06cc\u06ba \u0627\u067e \u0644\u0648\u0688 \u067e\u0631\u0648\u0633\u06cc\u0633\u0646\u06af \u0627\u0648\u0631 \u0686\u0646\u06a9 \u0645\u06cc\u0646\u062c\u0645\u0646\u0679 \u0633\u06d2 \u0644\u06d2 \u06a9\u0631 \u0622\u0628\u062c\u06cc\u06a9\u0679 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c\u060c \u0645\u06cc\u0679\u0627 \u0688\u06cc\u0679\u0627 \u0679\u0631\u06cc\u06a9\u0646\u06af\u060c \u0627\u0646\u06a9\u0631\u067e\u0634\u0646\u060c \u0627\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u06a9\u0644\u06cc\u0646 \u0627\u067e \u062a\u06a9\u060c \u06c1\u0631 \u062c\u0632\u0648 \u0641\u0627\u0626\u0644 \u0679\u0631\u0627\u0646\u0633\u0641\u0631 \u0622\u067e\u0631\u06cc\u0634\u0646\u0632 \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u0645\u062e\u0635\u0648\u0635 \u06a9\u0631\u062f\u0627\u0631 \u0627\u062f\u0627 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u06cc\u06c1 \u0639\u0645\u0644 \u06cc\u06c1 \u0628\u06be\u06cc \u0628\u062a\u0627\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u06a9\u0633 \u0637\u0631\u062d \u0633\u0631\u0648\u0633 \u0633\u06d2 \u0628\u0627\u06c1\u0631 \u0627\u067e \u0644\u0648\u0688\u0632 \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u06cc\u0627 \u062c\u0627\u0626\u06d2\u060c \u0645\u0634\u062a\u0631\u06a9\u06c1 \u0641\u0627\u0626\u0644\u0648\u06ba \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u06a9\u0648 \u06a9\u0646\u0679\u0631\u0648\u0644 \u06a9\u06cc\u0627 \u062c\u0627\u0626\u06d2\u060c \u0627\u0648\u0631 \u0645\u0646\u062a\u0642\u0644\u06cc \u06a9\u06cc \u0645\u06cc\u0639\u0627\u062f \u062e\u062a\u0645 \u06c1\u0648\u0646\u06d2 \u067e\u0631 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u06c1\u0679\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4 \u06cc\u06c1 \u0633\u0645\u062c\u06be\u0646\u0627 \u06a9\u06c1 \u06cc\u06c1 \u0627\u062c\u0632\u0627\u0621 \u06a9\u06cc\u0633\u06d2 \u0645\u0644 \u06a9\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u062c\u0628 \u0628\u06be\u06cc \u06a9\u0648\u0626\u06cc \u0627\u06cc\u06a9 \u0628\u0691\u06cc \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0627 \u0644\u0646\u06a9 \u0634\u06cc\u0626\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062a\u0648 \u06cc\u06c1 \u062f\u06cc\u06a9\u06be\u0646\u0627 \u0622\u0633\u0627\u0646 \u06c1\u0648 \u062c\u0627\u0626\u06d2 \u06af\u0627 \u06a9\u06c1 \u067e\u0631\u062f\u06d2 \u06a9\u06d2 \u067e\u06cc\u0686\u06be\u06d2 \u06a9\u06cc\u0627 \u06c1\u0648 \u0631\u06c1\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>5GB \u0648\u06cc\u0688\u06cc\u0648 \u0641\u0627\u0626\u0644 \u0628\u06be\u06cc\u062c\u0646\u0627 \u0622\u0633\u0627\u0646 \u0645\u0639\u0644\u0648\u0645 \u06c1\u0648 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba\u060c \u0627\u067e \u0644\u0648\u0688 \u067e\u0631 \u06a9\u0644\u06a9 \u06a9\u0631\u06cc\u06ba\u060c \u067e\u0631\u0648\u06af\u0631\u06cc\u0633 \u0628\u0627\u0631 \u06a9\u06d2 \u0645\u06a9\u0645\u0644 \u06c1\u0648\u0646\u06d2 \u06a9\u0627 \u0627\u0646\u062a\u0638\u0627\u0631 \u06a9\u0631\u06cc\u06ba\u060c \u067e\u06be\u0631 \u0644\u0646\u06a9 \u06a9\u0648 \u062f\u0648\u0633\u0631\u0648\u06ba \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0634\u06cc\u0626\u0631 \u06a9\u0631\u06cc\u06ba\u06d4 \u0644\u06cc\u06a9\u0646 \u062c\u0628 \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688 \u06c1\u0648 \u0631\u06c1\u06cc \u06c1\u06d2\u060c \u067e\u0633 \u0645\u0646\u0638\u0631 \u0645\u06cc\u06ba \u06a9\u0626\u06cc \u0686\u06cc\u0632\u06cc\u06ba \u06c1\u0648\u062a\u06cc \u06c1\u06cc\u06ba\u06d4 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u067e\u0631 \u0633\u0641\u0631 [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-32229","post","type-post","status-publish","format-standard","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/32229","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/comments?post=32229"}],"version-history":[{"count":0,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/32229\/revisions"}],"wp:attachment":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/media?parent=32229"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/categories?post=32229"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/tags?post=32229"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}