API Token দিয়ে ফাইল মুছে ফেলা
API Token দিয়ে ফাইল মুছে ফেলা স্ক্রিপ্ট, স্বয়ংক্রিয় কাজ এবং তৃতীয় পক্ষের প্রোগ্রামের জন্য তৈরি. অ্যাডমিন পাতা খুলতে হবে না. সাইটের URL, token এবং স্পষ্ট ফাইল ID দিলে ImgHost থেকে এক বা একাধিক ফাইল মুছে ফেলা যায়.
মুছে ফেলা একটি লেখার কাজ এবং কমান্ড চালানোর পর ডেটা সত্যিই মুছে যায়. আগে imghost-token-list.mjs ব্যবহার করে যে fileId মানগুলো মুছতে চান সেগুলো নিশ্চিত করুন, তারপর সেই IDগুলো মুছে ফেলার স্ক্রিপ্টে দিন.

শুরু করার আগে
অ্যাডমিন প্যানেল খুলে যান:
text
System Settings -> Security Settings -> API TokenAPI Token তৈরি বা সম্পাদনা করার সময় নিশ্চিত করুন token-টি মুছে ফেলার অনুমতি দেয়. এই স্ক্রিপ্টের শুধু delete অনুমতি দরকার.
token পরিবেশ চলকেও রাখা যায়:
powershell
$env:IMGHOST_API_TOKEN="your API Token"স্ক্রিপ্ট ডাউনলোড
| স্ক্রিপ্ট | উদ্দেশ্য |
|---|---|
| ফাইল মুছে ফেলার স্ক্রিপ্ট | স্পষ্টভাবে দেওয়া এক বা একাধিক ফাইল ID মুছে ফেলা. |
Node.js 18 বা তার নতুন সংস্করণ প্রয়োজন.
মুছে ফেলার API-এর আচরণ
মুছে ফেলার স্ক্রিপ্ট ব্যাকএন্ডের মুছে ফেলার API ডাকে:
text
POST /api/manage/delete/batchঅনুরোধে API Token থাকতে হবে:
text
Authorization: Bearer <token>অনুরোধের body উদাহরণ:
json
{
"fileIds": ["photos/2026/a.txt"],
"deleteStrictness": "strict"
}fileIds-এ একটি ফাইল থাকলে এটি একক ফাইল মুছে ফেলা. একাধিক ফাইল থাকলে এটি ব্যাচ মুছে ফেলা. ব্যাকএন্ড এক অনুরোধে সর্বোচ্চ 15টি ফাইল প্রক্রিয়া করে, এবং স্ক্রিপ্ট --batch-size অনুযায়ী কাজ স্বয়ংক্রিয়ভাবে একাধিক অনুরোধে ভাগ করে.
API একটি NDJSON অগ্রগতি স্ট্রিম ফেরত দেয়. সাধারণ ঘটনার মধ্যে আছে batch_start, file_step, file_done, batch_complete এবং batch_error. স্ক্রিপ্ট এসব ঘটনা বিশ্লেষণ করে সহজপাঠ্য আউটপুট বা JSON আউটপুট হিসেবে সারাংশ দেয়.
মুছে ফেলা সফল হলে ব্যাকএন্ড স্বয়ংক্রিয়ভাবে ফাইল সূচি, ডিরেক্টরি পরিসংখ্যান, ধারণক্ষমতার পরিসংখ্যান এবং ক্যাশ পরিষ্কার করে.
মুছে ফেলার স্ক্রিপ্টের পরামিতি
| পরামিতি | আবশ্যিক | বর্ণনা |
|---|---|---|
--base-url <url> | হ্যাঁ | ImgHost সাইটের URL, যেমন https://image.ai6.me. |
--token <token> | হ্যাঁ | API Token. চাইলে IMGHOST_API_TOKEN পরিবেশ চলক ব্যবহার করতে পারেন. |
--file-id <id> | হ্যাঁ | মুছে ফেলার ফাইল ID. একাধিকবার দেওয়া যায়. |
--strictness <strict|soft> | না | মুছে ফেলার কঠোরতা. ডিফল্ট strict. |
--batch-size <n> | না | প্রতি অনুরোধে ফাইল সংখ্যা. ডিফল্ট 15, সর্বোচ্চ 15. |
--retries <n> | না | সাময়িক ব্যর্থতায় পুনরায় চেষ্টার সংখ্যা. ডিফল্ট 3. |
--timeout-ms <n> | না | প্রতিটি অনুরোধের সময়সীমা. ডিফল্ট 180000. |
--output <pretty|json> | না | আউটপুটের ধরন. ডিফল্ট pretty. |
--save-response <path> | না | শেষ ফলাফল JSON ফাইল হিসেবে সংরক্ষণ করে. |
-h / --help | না | স্ক্রিপ্টের সাহায্য দেখায়. |
এই স্ক্রিপ্ট শুধু আপনার দেওয়া স্পষ্ট --file-id মানগুলো মুছে ফেলে. এটি অস্পষ্ট মিল খোঁজে না, কোনো ডিরেক্টরি একসঙ্গে খালি করে না, এবং কমা দিয়ে আলাদা তালিকা বা স্থানীয় ফাইল থেকে মুছে ফেলার ID পড়ে না.
কঠোর মুছে ফেলা এবং নরম মুছে ফেলা
| মোড | বর্ণনা |
|---|---|
strict | ডিফল্ট মোড. দূরবর্তী সংরক্ষণস্থান থেকে মুছে ফেলা ব্যর্থ হলে ImgHost রেকর্ড রাখা হয়, যাতে পরে আবার চেষ্টা বা তদন্ত করা যায়. |
soft | দূরবর্তী সংরক্ষণস্থান থেকে মুছে ফেলা ব্যর্থ হলেও ImgHost রেকর্ড পরিষ্কার করা হয়, এবং ফলাফলে সতর্কতা ফেরত আসে. |
কমান্ড সফল গণ্য করতে দূরবর্তী ফাইল অবশ্যই মুছতে হলে ডিফল্ট strict মোড ব্যবহার করুন. কোনো দূরবর্তী প্ল্যাটফর্ম আর বস্তুটি মুছতে না পারলে এবং আপনি শুধু ImgHost রেকর্ড পরিষ্কার করতে চাইলে soft ব্যবহার করুন.
উদাহরণ
একটি ফাইল মুছে ফেলা:
powershell
node imghost-token-delete.mjs `
--base-url "https://your-domain" `
--token "your API Token" `
--file-id "photos/2026/a.txt"পরিবেশ চলক থেকে token ব্যবহার:
powershell
$env:IMGHOST_API_TOKEN="your API Token"
node imghost-token-delete.mjs `
--base-url "https://your-domain" `
--file-id "photos/2026/a.txt"একাধিক ফাইল মুছে ফেলা:
powershell
node imghost-token-delete.mjs `
--base-url "https://your-domain" `
--file-id "photos/2026/a.txt" `
--file-id "photos/2026/b.txt" `
--file-id "photos/2026/c.txt"দূরবর্তী মুছে ফেলা ব্যর্থ হলেও ImgHost রেকর্ড পরিষ্কার করা:
powershell
node imghost-token-delete.mjs `
--base-url "https://your-domain" `
--file-id "photos/2026/a.txt" `
--strictness softJSON আউটপুট দিয়ে ফলাফল সংরক্ষণ:
powershell
node imghost-token-delete.mjs `
--base-url "https://your-domain" `
--file-id "photos/2026/a.txt" `
--output json `
--save-response ".\delete-result.json"প্রতিটি অনুরোধ 5 ফাইলে সীমিত করা:
powershell
node imghost-token-delete.mjs `
--base-url "https://your-domain" `
--file-id "photos/2026/a.txt" `
--file-id "photos/2026/b.txt" `
--batch-size 5মুছে ফেলার আগে fileId যাচাই করুন
মুছে ফেলার স্ক্রিপ্টে ImgHost ফাইল ID লাগে. আগে তালিকা স্ক্রিপ্ট দিয়ে কোনো ডিরেক্টরির ফাইল পরীক্ষা করতে পারেন:
powershell
node imghost-token-list.mjs `
--base-url "https://your-domain" `
--token "your API Token" `
--files `
--dir "photos/2026" `
--count 10 `
--output jsonফেরত আসা ফলাফলের name ক্ষেত্র সাধারণত সেই fileId, যা মুছে ফেলার স্ক্রিপ্টে দেওয়া যায়.
সাধারণ প্রশ্ন
মুছে ফেলা ব্যর্থ হলেও ফাইল তালিকায় কেন আছে?
ডিফল্ট strict মোড ব্যবহার করলে দূরবর্তী সংরক্ষণস্থান থেকে মুছে ফেলা ব্যর্থ হলে ImgHost রেকর্ড রাখা হয়. এতে স্থানীয় সূচি মুছে গিয়ে দূরবর্তী ফাইল থেকে যাওয়ার ঝুঁকি এড়ানো যায়. শুধু ImgHost রেকর্ড পরিষ্কার করতে চান তা নিশ্চিত হলে একই fileId দিয়ে soft ব্যবহার করে আবার চেষ্টা করুন.
ফলাফলে সতর্কতা কেন আছে?
সতর্কতা সাধারণত দূরবর্তী মুছে ফেলা, ক্যাশ পরিষ্কার বা পরিসংখ্যান চূড়ান্ত করার সময় অমারাত্মক সমস্যা বোঝায়. স্ক্রিপ্ট সতর্কতাগুলো সারাংশ করে দেয়, যাতে আবার চেষ্টা দরকার কি না বুঝতে পারেন.
একবারে পুরো ডিরেক্টরি মুছে ফেলতে পারি?
এই স্ক্রিপ্ট ডিরেক্টরি খালি করার কাজ দেয় না. আগে তালিকা স্ক্রিপ্ট দিয়ে স্পষ্ট fileId মানগুলো ফিল্টার করুন, তারপর যে ফাইলগুলো মুছতে চান সেগুলো একে একে দিন.