Skip to content

API Token ဖြင့် ဖိုင် အပ်လုဒ်တင်ခြင်း

API Token အပ်လုဒ်သည် စခရစ်၊ အလိုအလျောက်လုပ်ငန်းစဉ်များနှင့် ပြင်ပပရိုဂရမ်များမှ ImgHost သို့ ဖိုင်ပို့ရန် အသုံးပြုသည်။ ဝဘ်မျက်နှာပြင်ကို ဖွင့်ရန် မလိုပါ။ ဆိုက်လိပ်စာ၊ API Token၊ စက်တွင်းဖိုင်လမ်းကြောင်းနှင့် အမှန်တကယ်ရှိသော အပ်လုဒ်ချန်နယ်ကို ပေးလိုက်လျှင် ဖိုင်တင်ပြီးနောက် ဖိုင် URL ကို ပြန်လည်ရရှိသည်။

API Token ပြင်ဆင်ခြင်း

ကြိုတင်ပြင်ဆင်ရန်

စီမံခန့်ခွဲရေးမျက်နှာပြင်တွင် အောက်ပါနေရာသို့ သွားပါ။

text
System Settings -> Security Settings -> API Token

API Token ကို ဖန်တီးခြင်း သို့မဟုတ် ပြင်ဆင်ခြင်းပြုလုပ်ပါက အပ်လုဒ်ခွင့်ပြုချက်ကို ဖွင့်ထားရမည်။ မူရင်းအပ်လုဒ်ချန်နယ်သည်လည်း တကယ်အသုံးပြုနိုင်သော ချန်နယ်ဖြစ်ရမည်။ API Token အပ်လုဒ်တွင် စမတ်ဖြန့်ဝေမှု ကို မသုံးပါ။ စခရစ်မှ ခေါ်ရာတွင် __smart__ မပို့ဘဲ s3githubtelegram ကဲ့သို့သော ချန်နယ်ကီးကို သတ်မှတ်ပါ။

အပ်လုဒ်စခရစ်များ ဒေါင်းလုဒ်လုပ်ရန်

ဤစာတမ်းတွင် Node.js စခရစ် ၂ ခု ပါဝင်သည်။

စခရစ်အသုံးပြုရန်နေရာ
တစ်ကြိမ်တည်း အပ်လုဒ်စခရစ်/upload ကို တစ်ကြိမ်သာ ခေါ်သည်။ ဖိုင်သေးများနှင့် ချိတ်ဆက်မှုစမ်းသပ်ရန် သင့်တော်သည်။
အပိုင်းခွဲ အပ်လုဒ်စခရစ်API Token ဖြင့် အပိုင်းခွဲခြင်း၊ တိုက်ရိုက်တင်ခြင်း သို့မဟုတ် သက်ဆိုင်ရာ ပလက်ဖောင်း၏ အပ်လုဒ်ဆက်ရှင်ကို အသုံးပြုသည်။ ဖိုင်ကြီးများအတွက် သင့်တော်သည်။

အသုံးပြုရန် Node.js 18 သို့မဟုတ် ၎င်းထက်အသစ်သော ဗားရှင်း လိုအပ်သည်။

အသုံးပြုနိုင်သော ချန်နယ်များ ကြည့်ရန်

စခရစ်နှစ်ခုလုံးတွင် လက်ရှိ API Token ဖြင့် အသုံးပြုနိုင်သော အပ်လုဒ်ချန်နယ်များကို ကြိုတင်ကြည့်နိုင်သည်။

powershell
node imghost-token-single-upload.mjs --base-url "https://your-domain" --token "your API Token" --list-channels
node imghost-token-chunk-upload.mjs --base-url "https://your-domain" --token "your API Token" --list-channels

ချန်နယ်စာရင်းကိုသာ ကြည့်မည်ဆိုပါက --file နှင့် --channel မလိုပါ။ ပြန်လာသော အချက်အလက်တွင် မူရင်းအပ်လုဒ်ချန်နယ်၊ ချန်နယ်ကီး၊ ချန်နယ်ခွဲအမည်များနှင့် ဝန်ခွဲဖြန့်မှုအခြေအနေ ပါဝင်သည်။ လျှို့ဝှက်ကီး၊ အသစ်ပြန်ယူသော Token စသည့် လုံခြုံရေးဆိုင်ရာ ပြင်ဆင်ချက်များကို မပြန်ပေးပါ။

မည်သည့်နည်းလမ်းကို သုံးမလဲ

နည်းလမ်းသင့်တော်သောအခြေအနေရှင်းလင်းချက်
တစ်ကြိမ်တည်း အပ်လုဒ်ဖိုင်သေးများ၊ ရိုးရှင်းသော စခရစ်၊ ချိတ်ဆက်မှုစမ်းသပ်ခြင်းဖိုင်တစ်ခုလုံးကို တောင်းဆိုမှုတစ်ခုအဖြစ် /upload သို့ ပို့သည်။
အပိုင်းခွဲ အပ်လုဒ်ဖိုင်ကြီးများ၊ အချိန်ကုန်၍ ပြတ်တောက်လွယ်သော ဖိုင်များစခရစ်က ချန်နယ်အလိုက် အပိုင်းခွဲခြင်း၊ တိုက်ရိုက်တင်ခြင်း သို့မဟုတ် အပ်လုဒ်ဆက်ရှင်ကို ကိုင်တွယ်ပေးသည်။

ဖိုင်ကြီးများအတွက် အပိုင်းခွဲ အပ်လုဒ်စခရစ်ကို ဦးစွာသုံးပါ။ တစ်ကြိမ်တည်း အပ်လုဒ်သည် Cloudflare တောင်းဆိုမှုအရွယ်အစား၊ Worker မှတ်ဉာဏ်နှင့် ချန်နယ်ဘက်ကန့်သတ်ချက်များကို တိုက်ရိုက်ထိခိုက်နိုင်သည်။

တစ်ကြိမ်တည်း အပ်လုဒ်

တစ်ကြိမ်တည်း အပ်လုဒ်စခရစ်သည် /upload သို့ တောင်းဆိုမှုတစ်ကြိမ်သာ ပို့သည်။

powershell
node imghost-token-single-upload.mjs `
  --base-url "https://your-domain" `
  --token "your API Token" `
  --file "D:\test\image.png" `
  --channel s3 `
  --folder "photos/2026"

Token ကို ပတ်ဝန်းကျင်ပြောင်းလဲကိန်းတွင်လည်း ထားနိုင်သည်။

powershell
$env:IMGHOST_API_TOKEN="your API Token"
node imghost-token-single-upload.mjs --base-url "https://your-domain" --file "D:\test\image.png" --channel s3

တစ်ကြိမ်တည်း အပ်လုဒ် ပါရာမီတာများ

ပါရာမီတာလိုအပ်မှုရှင်းလင်းချက်
--base-url <url>လိုအပ်ImgHost ဆိုက် URL။ ဥပမာ https://image.ai6.me
--token <token>လိုအပ်API Token။ IMGHOST_API_TOKEN ပတ်ဝန်းကျင်ပြောင်းလဲကိန်းကိုလည်း သုံးနိုင်သည်။
--file <path>လိုအပ်စက်တွင်းဖိုင်လမ်းကြောင်း။
--channel <key>လိုအပ်အမှန်တကယ် အသုံးပြုမည့် အပ်လုဒ်ချန်နယ်။
--folder <path>မလိုအပ်တင်မည့်ဖိုင်တွဲ။ ဥပမာ photos/2026 သို့မဟုတ် /user/
--name-type <type>မလိုအပ်ဖိုင်အမည်ပေးပုံ။ ဆာဗာဘက် uploadNameType နှင့် ကိုက်ညီသည်။ မူရင်းတန်ဖိုးမှာ default ဖြစ်သည်။
--channel-name <name>မလိုအပ်သတ်မှတ်ထားသော ချန်နယ်ခွဲ သို့မဟုတ် အကောင့်ကို ရွေးရန်။ မပေးပါက ဆာဗာဘက်ချန်နယ်ပြင်ဆင်ချက်အတိုင်း ရွေးသည်။
--retries <n>မလိုအပ်ယာယီမအောင်မြင်ပါက ပြန်ကြိုးစားမည့် အကြိမ်ရေ။ မူရင်းတန်ဖိုး 3
--timeout-ms <n>မလိုအပ်တောင်းဆိုမှုတစ်ကြိမ်၏ အချိန်ကန့်သတ်ချက်။ မူရင်းတန်ဖိုး 180000
--output <pretty|json>မလိုအပ်ထုတ်ပြပုံ။ မူရင်းတန်ဖိုး pretty
--save-response <path>မလိုအပ်နောက်ဆုံးရလဒ်ကို JSON ဖိုင်အဖြစ် သိမ်းသည်။
--list-channelsမလိုအပ်လက်ရှိ Token ဖြင့် အသုံးပြုနိုင်သော ချန်နယ်များကိုသာ ပြပြီး ဖိုင်မတင်ပါ။

တစ်ကြိမ်တည်း အပ်လုဒ် ချန်နယ်များ

ချန်နယ်ကီးချန်နယ်
telegram / tgTelegram
discord / dcDiscord
cfr2 / r2Cloudflare R2
s3S3
webdav / wdWebDAV သိုလှောင်မှုချန်နယ်
github / ghGitHub Releases
gitlab / glGitLab Packages
huggingface / hfHugging Face
onedrive / odOneDrive
googledrive / google / gdGoogle Drive
dropbox / dbDropbox
yandex / yxYandex Disk
pcloud / pdpCloud

တစ်ကြိမ်တည်း အပ်လုဒ် အရွယ်အစားကန့်သတ်ချက်

တစ်ကြိမ်တည်း အပ်လုဒ်တွင် ဖိုင်တစ်ဖိုင်ကို 100 MB အောက်တွင် ထားရန် အကြံပြုသည်။

အောက်ပါ ချန်နယ်များတွင် တစ်ကြိမ်တည်း /upload အတွက် ရှင်းလင်းသော တားဆီးကန့်သတ်ချက် ရှိသည်။

ချန်နယ်တစ်ကြိမ်တည်း အပ်လုဒ် အမြင့်ဆုံးအရွယ်အစား
Telegram20 MiB
Discord10 MiB
S364 MiB
WebDAV64 MiB
GitHub Releases64 MiB
GitLab Packages64 MiB

ကန့်သတ်ချက်ထက် ကျော်လွန်ပါက စခရစ်သည် စက်တွင်းတွင် သက်ဆိုင်ရာ အမှားကို ပြသည်။ အခြားချန်နယ်များအတွက် စခရစ်တွင် 100 MB သီးသန့်စက်တွင်းကန့်သတ်ချက် မထားပါ။ တောင်းဆိုမှုအရွယ်အစားသည် Cloudflare သို့မဟုတ် ပလက်ဖောင်းဘက်နိုင်စွမ်းကို ကျော်လွန်ပါက Cloudflare သို့မဟုတ် အဝေးပလက်ဖောင်းမှ အမှားပြန်လာနိုင်သည်။

အပိုင်းခွဲ အပ်လုဒ်

အပိုင်းခွဲ အပ်လုဒ်စခရစ်သည် API Token ဖြင့် ဆာဗာဘက်တွင် အပ်လုဒ်ပစ်မှတ်ကို ဦးစွာဆုံးဖြတ်စေပြီးနောက် ရွေးထားသောချန်နယ်နှင့် ကိုက်ညီသော ဖိုင်ကြီးတင်ပို့ရေးလုပ်ငန်းစဉ်ကို ဆက်လုပ်သည်။ အသုံးပြုသူက ဆက်ရှင်ဖန်တီးခြင်း၊ အပိုင်းများပို့ခြင်း၊ ပေါင်းစည်းခြင်း သို့မဟုတ် ပြီးဆုံးကြောင်းတောင်းဆိုမှုကို ကိုယ်တိုင်ရေးရန် မလိုပါ။

powershell
node imghost-token-chunk-upload.mjs `
  --base-url "https://your-domain" `
  --token "your API Token" `
  --file "D:\test\video.zip" `
  --channel github `
  --folder "photos/2026" `
  --concurrency 3

အပိုင်းခွဲ အပ်လုဒ် ပါရာမီတာများ

ပါရာမီတာလိုအပ်မှုရှင်းလင်းချက်
--base-url <url>လိုအပ်ImgHost ဆိုက် URL။
--token <token>လိုအပ်API Token။ IMGHOST_API_TOKEN ပတ်ဝန်းကျင်ပြောင်းလဲကိန်းကိုလည်း သုံးနိုင်သည်။
--file <path>လိုအပ်စက်တွင်းဖိုင်လမ်းကြောင်း။
--channel <key>လိုအပ်အမှန်တကယ် အသုံးပြုမည့် အပ်လုဒ်ချန်နယ်။
--folder <path>မလိုအပ်တင်မည့်ဖိုင်တွဲ။
--name-type <type>မလိုအပ်ဖိုင်အမည်ပေးပုံ။ ဆာဗာဘက် uploadNameType နှင့် ကိုက်ညီသည်။ မူရင်းတန်ဖိုး default
--channel-name <name>မလိုအပ်သတ်မှတ်ထားသော ချန်နယ်ခွဲ သို့မဟုတ် အကောင့်ကို ရွေးရန်။
--concurrency <n>မလိုအပ်တစ်ပြိုင်နက်တင်မည့် အရေအတွက်။ မူရင်းတန်ဖိုး 1၊ အများဆုံး 3
--retries <n>မလိုအပ်ယာယီမအောင်မြင်ပါက ပြန်ကြိုးစားမည့် အကြိမ်ရေ။ မူရင်းတန်ဖိုး 3
--timeout-ms <n>မလိုအပ်တောင်းဆိုမှုတစ်ခုချင်းစီ၏ အချိန်ကန့်သတ်ချက်။ မူရင်းတန်ဖိုး 180000
--output <pretty|json>မလိုအပ်ထုတ်ပြပုံ။ မူရင်းတန်ဖိုး pretty
--save-response <path>မလိုအပ်နောက်ဆုံးရလဒ်ကို JSON ဖိုင်အဖြစ် သိမ်းသည်။
--list-channelsမလိုအပ်လက်ရှိ Token ဖြင့် အသုံးပြုနိုင်သော ချန်နယ်များကိုသာ ပြပြီး ဖိုင်မတင်ပါ။

အပိုင်းခွဲ အပ်လုဒ် လမ်းကြောင်းများ

ချန်နယ်ကီးအပ်လုဒ်လမ်းကြောင်း
telegram / tg/upload မှတစ်ဆင့် အမှန်တကယ် အပိုင်းခွဲဆက်ရှင်
discord / dc/upload မှတစ်ဆင့် အမှန်တကယ် အပိုင်းခွဲဆက်ရှင်
cfr2 / r2/upload မှတစ်ဆင့် အမှန်တကယ် အပိုင်းခွဲဆက်ရှင်
github / gh/upload မှတစ်ဆင့် အမှန်တကယ် အပိုင်းခွဲဆက်ရှင်
gitlab / gl/upload မှတစ်ဆင့် အမှန်တကယ် အပိုင်းခွဲဆက်ရှင်
webdav / wd/upload မှတစ်ဆင့် အမှန်တကယ် အပိုင်းခွဲဆက်ရှင်
s3S3 မျိုးစုံအပိုင်း အပ်လုဒ်
onedrive / odOneDrive အပ်လုဒ်ဆက်ရှင်
googledrive / google / gdGoogle Drive ဆက်လက်တင်နိုင်သော အပ်လုဒ်
dropbox / dbDropbox အပ်လုဒ်ဆက်ရှင်
yandex / yxYandex တိုက်ရိုက်အပ်လုဒ် URL
pcloud / pdpCloud အပ်လုဒ်လင့်ခ်
huggingface / hfHugging Face LFS အပ်လုဒ်

စမ်းသပ်မှုအရ Yandex တွင် ဖိသိပ်ထားသောဖိုင်များသည် မတည်ငြိမ်နိုင်သည်။ Yandex ချန်နယ်ကို သုံးမည်ဆိုပါက ဖြစ်နိုင်လျှင် မဖိသိပ်ထားသောဖိုင်ကို အသုံးပြုပါ။

ပြန်လာသောရလဒ်

အပ်လုဒ်အောင်မြင်ပါက စခရစ်သည် အောက်ပါပုံစံဖြင့် ပြသည်။

text
success
src: /file/photos/2026/example.png
url: https://your-domain/file/photos/2026/example.png
fileId: photos/2026/example.png
အကွက်ရှင်းလင်းချက်
srcဆိုက်အတွင်းရှိ ဖိုင်လမ်းကြောင်း။
urlအပြည့်အစုံဝင်ရောက်နိုင်သော URL။ ကိုယ်ပိုင်စခရစ် သို့မဟုတ် ဒေတာဘေ့စ်ထဲတွင် တိုက်ရိုက်သိမ်းနိုင်သည်။
fileIdဖိုင် ID။ နောက်မှရှာဖွေခြင်း၊ စီမံခြင်း၊ မှတ်တမ်းတင်ခြင်းတို့တွင် သုံးသည်။
channelNameအပိုင်းခွဲစခရစ်တွင် တကယ်အသုံးပြုခဲ့သော ချန်နယ်ခွဲ သို့မဟုတ် အကောင့်အမည် ပြန်လာနိုင်သည်။

--output json ကို သတ်မှတ်ပါက ပရိုဂရမ်တွင် ကိုင်တွယ်ရလွယ်သော JSON အပြည့်အစုံကို ထုတ်ပေးသည်။

တစ်ကြိမ်တည်း အပ်လုဒ် API ကို တိုက်ရိုက်ခေါ်ရန်

စခရစ်မသုံးဘဲ တစ်ကြိမ်တည်း အပ်လုဒ် API ကို တိုက်ရိုက်ခေါ်နိုင်သည်။

text
POST https://your-domain/upload?uploadChannel=s3&uploadFolder=photos/2026&uploadNameType=default
Authorization: Bearer your API Token
Content-Type: multipart/form-data

ဘောင်အကွက်:

အကွက်လိုအပ်မှုရှင်းလင်းချက်
fileလိုအပ်အပ်လုဒ်တင်မည့်ဖိုင်။

မေးမြန်းမှုပါရာမီတာ:

ပါရာမီတာလိုအပ်မှုရှင်းလင်းချက်
uploadChannelလိုအပ်အမှန်တကယ် အသုံးပြုမည့် အပ်လုဒ်ချန်နယ်။
uploadFolderမလိုအပ်တင်မည့်ဖိုင်တွဲ။
uploadNameTypeမလိုအပ်ဖိုင်အမည်ပေးပုံ။
channelNameမလိုအပ်ချန်နယ်ခွဲ သို့မဟုတ် အကောင့်ကို သတ်မှတ်ရန်။

အောင်မြင်သော ပြန်စာဥပမာ:

json
{
  "success": true,
  "src": "/file/photos/2026/example.png",
  "url": "https://your-domain/file/photos/2026/example.png",
  "fileId": "photos/2026/example.png"
}

မေးလေ့ရှိသော မေးခွန်းများ

ဖိုင်ကြီးကို တစ်ကြိမ်တည်းတင်ရာတွင် မအောင်မြင်ပါ

တစ်ကြိမ်တည်း /upload သည် ဖိုင်တစ်ခုလုံးကို တောင်းဆိုမှုတစ်ခုအဖြစ် ပို့သည်။ ဖိုင်ကြီးများသည် Cloudflare သို့မဟုတ် အဝေးပလက်ဖောင်းဘက်တွင် တားဆီးခံရနိုင်သည်။ ဖိုင်ကြီးများအတွက် အပိုင်းခွဲ အပ်လုဒ်စခရစ်ကို သုံးပါ။

--channel-name ပေးထားသော်လည်း မအောင်မြင်ပါ

စီမံခန့်ခွဲရေးမျက်နှာပြင်တွင် ထိုချန်နယ်အောက်၌ အမည်တူချန်နယ်ခွဲ ရှိပြီး ဖွင့်ထားကြောင်း စစ်ဆေးပါ။ --channel-name မပေးပါက ဆာဗာဘက်သည် ထိုချန်နယ်ပြင်ဆင်ချက်အတိုင်း အသုံးပြုနိုင်သော အကောင့်ကို ရွေးသည်။

ရလဒ်ကို အခြားပရိုဂရမ်တွင် သုံးလိုပါသည်

--output json ကို သုံးပါ။ သို့မဟုတ် --save-response result.json ကို ထည့်ပါ။ သိမ်းထားသော JSON ထဲရှိ url အကွက်မှ ဖိုင် URL အပြည့်အစုံကို ရယူနိုင်သည်။

Yandex တွင် ဖိသိပ်ထားသောဖိုင် တင်မရပါ

Yandex သည် ဖိသိပ်ထားသော ဖိုင်အမျိုးအစားများကို မထောက်ပံ့နိုင်ပါ။ ၎င်းသည် ပလက်ဖောင်းဘက် မူဝါဒနှင့် ဆက်စပ်နိုင်သည်။ Yandex ချန်နယ်ကို သုံးပါက ဖြစ်နိုင်လျှင် မဖိသိပ်ထားသောဖိုင်ကို တင်ပါ။

Released as user documentation for ImgHost.