ارسال درخواست POST در فلاتر
قبلا در مورد ارتباط با سرور در فلاتر صحبت کردیم و از اهمیت آن در طراحی اپلیکیشن و ساختار جیسون نیز آشنا شدیم.
برای کار با وب سرویس و ارسال اطلاعات متدهای مختلفی برای پروتکل http وجود دارد که هرکدام از آنها در شرایط مختلفی کاربرد دارد. متدهایی مثل GET, POST, DELETE, PUT که از بین آنها دو متد GET و POST بیشترین کاربرد را دارند.
روشی که در مطلب قبلی استفاده میکردیم ارسال اطلاعات از طریق متد GET بود.
در این روش اطلاعات ما داخل ادرس url قرار میگیره که امنیت پایینی داره. زیرا در این حالت تمام پارامترهای ارسالی به وب سرویس قابل مشاهده است و نمیتوانید برای ارسال اطلاعات حساس مانند رمز عبور یا توکن احراز هویت از آن استفاده کنید. همچنین اگر تعداد اطلاعاتی که قصد ارسال آنها را دارید زیاد باشند این روش باعث سردرگمی و پیچیدگی آدرس url میشود.
اما در این مطلب با همدیگه قصد داریم که ارسال اطلاعات به روش POST را بررسی کنیم.
برای ارسال درخواست POSTبه همان روش قبلی عمل میکنیم یعنی استفاده از پکیج http اما به جای دستور http.get از دستور http.post استفاده میکنیم که مشخص کننده نوع متد ارتباطی میباشد و پارامترهای ارسالی خودمون و به شکل یک جیسون آبجکت مینویسیم یا همان مپ در واقع.
var url = 'http://url.com';
var response = await http.post(url,body: {'name':'Hesam','postid':'1','message':'salam' });
print('Server respones: ${response.body}');
return response
در کد بالا سه پارامتر مختلف را به وب سرویس مورد نظر ارسال میکنیم. برای این کار از ویژگی به نام body استفاده میکنیم که یک ساختار به شکل مپ دریافت میکند. کلیدهای این مپ همان پارامترهایی هستند که در API قرار است که دریافت شوند و با مشخص کردن مقدار آنها اطلاعات مورد نظر به سرور ارسال میشوند.
اگر نیاز دارید که یک جیسون آبجکت واقعی به سرور ارسال کنید میتوانید از دستور json.encode استفاده کنید و رشته جیسون خودتون و داخل آن قرار بدید.
باقی موارد همانند روش قبلی میباشد و بعد از ارسال درخواست یک پاسخ از سمت سرور دریافت میشود که معمولا شامل محتویات جیسون است و میتوانید با تجزیه کردن آن عملیات مورد نظر خود را انجام دهید.
مطالب زیر را حتما مطالعه کنید
آموزش پیاده سازی معماری تمیز در برنامه نویسی فلاتر Clean Architecture
آموزش پیاده سازی لینت Lint در برنامه نویسی فلاتر
آموزش الگوی تزریق وابستگی در فلاتر Dependency Injection
کتاب های آموزش برنامه نویسی فلاتر + دانلود PDF
آموزش نصب فلاتر و رفع خطاهای رایج ساخت پروژه + ویدیو
آموزش استفاده از نقشه در فلاتر
5 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
وقتتون بخیر و خسته نباشید
برای دریافت json و قرار دادن ان در لیست ویو دنبال چه اموزشی باشم ؟
ممنون از راهنماییتون
سلام آموزش متنی دریافت جیسون و نمایش در لیست داخل مطالب وب سایت موجود هست. بصورت ویدیویی هم داخل دوره آموزشی به صورت کامل این اموزش قرار داده شده است.
سلام در اموزشهای اموزش کار با سرویس هست؟مانند دریافت سرویس برای لیست ویو و یا سرویسهای ثبت و ذخیره؟؟
سلام اگر منظورتون آموزش وب سرویس دریافت اطلاعات و نمایش در لیست ویو هست بله در آموزش های سایت هست.
mrc mn kheili moshkel dashtam