پروژهها
دستهبندیها
پیوندها
کوتاهکننده آدرس ققنوس
جمعه، ۶ آبان ۱۳۹۰
سرویس کوتاه کننده آدرس ققنوس، سال گذشته معرفی شد و ما تا امروز شاهد بازخوردهای خوبی بودیم. تمرکز اصلی ما برای این روی محصول، سادگی استفاده، دسترسی آسان و امنیت بالا است. به طور خلاصه امکانات کوتاه کننده آدرس ققنوس به شرح زیر است:
- امکان انتخاب نوع آدرس: عددی، عدد و حروف، متن دلخواه
- دسترسی از طریق تلفن همراه، وب و افزونهی مرورگر کروم (و به زودی سافاری)
- پشتیبانی از سه زبان فارسی، انگلیسی و اسپانیایی
- امکان دسترسی از طریق API برای توسعهدهندگان یا برنامههای دیگر
- عدم ذخیره اطلاعات شخصی کاربر مانند آدرس IP
راهنمای استفاده از api
http://p5x.co/api/shorten/
ورودی
- پارامتر
url: این پارامتر ضروری است.
مقدار این پارامتر بایستی یک آدرس صحیح وب باشد. در صورتی که آدرس صحیح نباشد، سیستم یک پیام خطا تولید خواهد کرد.
- پارامتر
type: این پارامتر اختیاری است.
مقدار این پارامتر میتوانید یکی از سه مقدار:id،alphaیاcustomباشد. این پارامتر نوع تولید آدرس را مشخص میکند. مقدار پیشفرضidاست. نوعid، یک شناسه عددی به طور خودکار تولید خواهد کرد. مانند: ۱۲۳۴، نوعalpha، یک شناسه ۶کاراکتری تصادفی از ترکیب حروف و اعداد تولید میکند (بهتر برای امنیت) مانند: an4s82 ، و نوعcustomمتن دلخواه شما را در انتهای آدرس قرار میدهد (توضیح بیشتر در پارامتر بعدی).
- پارامتر
custom_data:
در صورتی که مقدار پارامتر قبلی یعنیtypeراcustomانتخاب نمایید، ارسال پارامترcustom_dataضروری است. مقدار این پارامتر باید یک رشته ترکیبی از حروف و اعداد باشد با طول بین ۳ تا ۱۰ کاراکتر. فقط کاراکترهای لاتین قابل قبول اند، مانند: wud1390. در صورتی که مقدار انتخاب شده تکراری باشد یا صحیح نباشد، سیستم یک پیام خطا تولید خواهد کرد.
- پارامتر
locale: این پارامتر اختیاری است.
ارسال این پارامتر زبان پیامهای خطای تولید شده را تعیین میکند. مقدار این پارامتر به صورت پیشفرضen(زبان انگلیسی است). شما میتوانید یکی از مقادیرfa(برای فارسی)،en(برای انگلیسی) یاes(برای اسپانیایی) را به عنوان مقدار این پارامتر ارسال کنید. توجه کنید که تعیین زبان فقط برای تغییر زبان پیامهای خطا کاربرد دارد و در تولید آدرس کوتاه تاثیری نخواهد داشت.
- پارامتر
output: این پارامتر اختیاری است.
این پارامتر نوع خروجی را تعیین میکند و مقدار آن به صورت پیشفرضjsonمیباشد. در حال حاضر، تنها گزینه ممکن برای شماrawاست. در صورتی که مقدارrawرا به این پارامتر ارسال کنید، سیستم آدرس کوتاه شده (یا پیامهای خطا) را به صورت خام در خروجی نمایش خواهد داد. این گزینه برای سیستمهایی که توان پردازش JSON را نداند و از API تنها انتظار آدرس کوتاه شده را دارند کاربرد دارد.
- پارامتر
callback: این پارامتر اختیاری است.
شما میتوانید یک رشته را به عنوان مقدار این پارامتر ارسال کنید تا نتیجه عملیات API به عنوان اولین آرگومان تابع مورد نظر شما ارسال گردد. برای مثال اگر شما مقدار print را ارسال نمایید، خروجی API به صورتprint({...});خواهد بود، این گزینه برای استفاده از کوتاه کننده آدرس ققنوس، از طریق جاواسکریپت کاربرد دارد. برای مثال، اگر قصد دارید با استفاده از امکانات Ajax فریموورک jQuery، به API متصل شوید، باید پارامترcallback=?را به همراه درخواست ارسال نمایید، تا نتیجه عملیات توسط jQuery قابل خواندن باشد.
خروجی
raw را به عنوان مقدار پارامتر output ارسال نکرده باشید، خروجی API یک رشته JSON خواهد بود. همانطور که در بالا شرح داده شد، انتخاب گزینه raw باعث میشود سیستم نتیجه را به صورت یک خروجی ساده با نوع text/html تولید کند.http://p5x.co/api/shorten/?url=http%3A%2F%2Fsallar.me%2F
{"status":"success","message":"http:\/\/p5x.co\/30","thanks":"A piece of cake :)"}
Application/JSON است، در صورتی که این خروجی توسط جاواسکریپت دریافت شود، به صورت شئ (Object) قابل استفاده است. در غیر اینصورت، میتوانید با استفاده از ابزارهای مربوطه در زبانهایی مانند php، آن را تفسیر به به آرایه یا شئ تبدیل نمیایید. برای اطلاعات بیشتر اطلاعات مربوط به تابع json_decode را در مستندات زبان php مطالعه کنید.
- متغیر
status:
این متغیر وضعیت خروجی را مشخص میکند و مقدار آن ممکن است یکی از مقادیرsuccessیاerrorباشد. اولی در صورت موفقیت آمیز بودن عملیات تبدیل و دومی در صورت بروز خطا.
- متغیر
message:
این متغیر در صورت موفقیت آمیز بودن عملیات تبدیل، حاوی آدرس کوتاه شده و در غیر اینصورت حاوی پیام خطا خواهد بود.
- متغیر
thanks:
در صورت موفقیت آمیز بودن عملیات تبدیل، پیام تشکر سیستم در این متغیر قرار میگیرد. در صورت بروز خطا مقدار این متغیرnullخواهد بود.
نکات مهم
- در صورتی که یک آدرس کوتاه شده توسط کوتاه کننده آدرس ققنوس را به عنوان پارامتر
urlارسال نمایید، سیستم به جای کوتاه کردن مجدد ِ آدرس کوتاه شده، آدرس اصلی (و بلند) را در اختیار شما قرار خواهد داد. - در صورتی که قصد دارید از متد GET (مانند مثال بالا) استفاده نمایید، باید حتما آدرس وب مورد نظر را به صورت انکد شد و مناسب برای Query String ارسال نمایید. برای مثال، در زبان پیاچپی میتوانید از تابع urlencode استفاده کنید. در صورتی که اینکار را انجام ندهید، پاسخی از سیستم دریافت نخواهید کرد. (رجوع شود به مثال بالا). ولی در صورتی که از متد POST استفاده کنید، خود مرورگر و جاواسکریپت اینکار را برای شما انجام میدهند.
یک مثال
var params = {
'url' : 'http://sallar.me/',
'type' : 'alpha',
'locale' : 'fa'
};
var api = 'http://p5x.co/api/shorten/?callback=?';
$.post(api, params, function(data)
{
if( data.status == 'success' ){
//Success! data.message: http://p5x.co/s79bu1
}
else{
//Error, Show data.message
}
}, "json");
سالار کابلی.
ديدگاهها ۵ ديدگاه
-
سامان:
خب زودتر اینو میذاشتی دیگه!
۰۷ آبان ۱۳۹۰ - ۱۰:۴۴ ق.ظ
ممنون :دی -
عباس ملک حسینی:
خیلی خوشحالم وقتی می بینم ایرانی ها هم به سراغ جدیدترین تکنولوژی های روز دنیا می روند.
تصمیم داشتم با یک گروه خارجی اولین سرویس کوتاه کننده لینک فارسی را راه اندازی نمایم، اما سرویس شما به حدی زیبا و ساده بود که پروژه را با آن گروه کنسل کردم.
شاد و سرزنده باشید
۰۸ دی ۱۳۹۰ - ۲:۳۵ ق.ظ -
سالار کابلی:
سلام عباس عزیز.
۱۰ دی ۱۳۹۰ - ۵:۲۴ ب.ظ
خوشحالم که پسندیدید. مطمئنم شماهم اگر کنسل نمیکردید خیلی بهتر میشد پروژهتون.
همیشه موفق باشید. -
امیر اخوان:
مرسی سالار جان … سرویس محشریست …
۰۷ اردیبهشت ۱۳۹۱ - ۲:۲۱ ق.ظ
برای دوتا پروژه استفاده کردیم و لذت بردیم :)
پیشنهادی که هست اینه که سرویس رو بصورت تولباری یا افزونه مرورگری هم منتشر کنی … :) -
سالار کابلی:
خوشحالم به دردت خورده امیر جان. در حال حاضر افزونهی کرومش موجود هست. اگر با کروم سایت رو باز کنی میبینیش:)
۰۷ اردیبهشت ۱۳۹۱ - ۴:۴۶ ب.ظ
ثبت ديدگاه