ای‌پی‌آی(API) فایلزی زنده شد! راهنما استفاده از API Filzy

ای‌پی‌آی یا Application Programming Interface یکی از کاربردی ترین فناوری ها در زمینه توسعه سایت است. به وسیله این فناوری دو و یا چند وبسایت میتوانند بدون توجه به زبان برنامه نویسی به وسیله XML و JSON با هم ارتباط برقرار کنند.ای‌پی‌آی فایلزی، یک API کاربردی برای ارتقا سطح مدیریت فایل های نرم افزارتان است.حال تنها قابلیت فشرده سازی فایل های CSS ،JS ،WEBP،JPG و PNG وجود دارد. اما در آینده تمامی قابلیت های وبسایت فایلزی مانند تغییر سایز تصاویر به این API اضافه میشوند.نحوه استفاده از API فایلزیارسال درخواست به API و کار با فایل JSONقبل از مطالعه این مقاله پیشنهاد میکنم مستندات فایلزی را مطالعه کنید.به صورت کلی برای استفاده از این API باید یک درخواست به آدرس مربوط به این API ارسال کنید. اگر با نحوه ارسال درخواست به فایل آشنایی ندارید، عبارت زیر را در گوگل جستجو کنید.Send Request For JSON {Language Name}بخش {Language Name} را با نام زبان برنامه نویسی که استفاده میکنید جایگزین کنید. برای مثال:Send Request For JSON PHPخروجی این API یک JSON است و از این رو باید با نحوه کار با JSON در زبان برنامه نویسی مورد استفاده توسط خود نیز آگاه باشید. اگر از این موضوع آگاهی ندارید عبارت زیر را در گوگل جستجو کنید.Work With JSON {Language Name}برای فشرده سازی تصاویر، فرمت آدرس درخواست به API باید به شکل زیر باشد:https://filzy.ir/api.php?file=File_Address&res=QualityFile_Address : آدرس فایل || Quality : کیفیت تصویرکیفیت تصویر عددی بین 1 تا 98 است. عدد کمتر برابر است با فشرده سازی و کاهش کیفیت بیشتر.آدرس تصویر باید آدرس کامل یک تصویر JPG یا PNG با HTTP یا HTTPS باشد.آدرس تصویر به صورت کلی اجباری نیست. اما در صورتی که این فیلد را وارد نکنید به صورت پیش فرض بر روی 75 قرار میگیرد. همچنین این فیلد تنها در فشرده سازی فایل های JPG و WEBP کاربرد دارد و در فایل های دیگر تاثیری ندارد.اگر منظور از فرمت آدرس را متوجه نشدید نگران نباشید. جلوتر به شکل عملی از این API استفاده میکنیم.کار با API فایلزی به وسیله PHP$file = 'https://i.picsum.photos/id/674/200/300.jpg?hmac=kS3VQkm7AuZdYJGUABZGmnNj_3KtZ6Twgb5Qb9ITssY'; $output = file_get_contents(&quothttps://filzy.ir/api.php?file=$file&res=50&quot); $output = json_decode($output, true); echo $output['file']; // Output compressed File Addressهمانطور که میبینید فرمت فایلی که توضیح داده بودیم را به file_get_contents پاس دادیم تا خروجی API را دریافت کنیم.کار با API فایلزی به وسیله JSvar request = new XMLHttpRequest(); var file = 'https://i.picsum.photos/id/674/200/300.jpg?hmac=kS3VQkm7AuZdYJGUABZGmnNj_3KtZ6Twgb5Qb9ITssY'; request.open('GET', `http://localhost/fillzy/api.php?file=${file}&res=50`, false); request.send(); var output = JSON.parse(request.responseText).file; console.log(output); // Output compressed File Address // OR fetch(`http://localhost/fillzy/api.php?file=${file}&res=50`).then(response => response.json()).then(json => console.log(json)) // Output compressed File Addressدر Javascript دو راه برای استفاده از این API وجود دارد.راه اول استفاده از XMLHttpRequest و راه دوم استفاده از Fetch است.خروجی API فایلزیبه صورت کلی خروجی این API آدرس فایل جدید یا یک ارور است.یک نمونه خروجی موفق:{&quotfile&quot : &quotmyImage.png&quot}همانطور که میبینید درصورت موفقیت آمیز بودن انجام عملیات خروجی این API چیزی مشابه به شکل بالا خواهد بود.یک نمونه خروجی ناموفق:[{ &quoterror_num&quot : 0, &quoterror&quot : &quotدر دریافت فایل مشکلی پیش آمد. لطفا آدرس فایل را بررسی کنید&quot }]همانطور که مشاهده میکنید زمانی که مشکلی رخ میدهد خروجی JSON به دو بخش error_num(شناسه خطا) و error(متن خطا) تقسیم میشود.برای مدیریت خطا میتوانید از error_num و error استفاده کنید. یک راه ساده برای بررسی موفقیت آمیز بودن یا شکست عملیات، بررسی وجود داشتن error_num در خروجی است.لیست کامل خطا های API فایلزی:[{ &quoterror_num&quot : -1, &quoterror&quot : &quotآدرس فایل وجود ندارد.&quot }][{ &quoterror_num&quot : 0, &quoterror&quot : &quotدر دریافت فایل مشکلی پیش آمد. لطفا آدرس فایل را بررسی کنید&quot }] [{ &quoterror_num&quot : 1, &quoterror&quot : &quotواکنش نامناسب. کد :&quot }] [{ &quoterror_num&quot : 2, &quoterror&quot : &quotحجم فایل از حداکثر حجم مجاز(3.5مگابایت) بیشتر است.&quot }] [{ &quoterror_num&quot : 3, &quoterror&quot : &quotفرمت فایل نامناسب است. تنها PNG و JPG/JPEG قابل قبول است.&quot }]برای مشاهده توضیحات هر خطا میتوانید از مستندات فایلزی استفاده کنید.در پایاندر این مقاله به توضیحاتی در مورد نحوه استفاده از API فایلزی پرداختیم. این مقاله در صورت آپدیت API فایلزی آپدیت میشود. همچنین در آینده در این مقاله به نکات جزئی تر نیز میپردازیم.آخرین اخبار فایلزی را از Twitter دنبال کنید.