تفاوت ارسال پارامتر در بدنه url و به وسیله متد post

پرسیده شده
فعالیت 1039 روز پیش
دیده شده 1183 بار
1

سلام

چرا باید برای ارسال اطلاعات  از بدنه(raw) url  استفاده کرد  و از متد post استفاده نشه

فایل پیوست

Daniyal Amiri
Daniyal Amiri

26 مهر 99

2
حذف شده

سلام

برای دریافت دیتا از آرایه POST باید هدر زیر Content-Type: application/x-www-form-urlencoded استفاده کنیم (همانطور که در postman استفاده کردیم) ، ولی چون ما با فرمت json کار میکنیم و هدر application/json را استفاده کرده ایم، باید به صورت raw دیتا را در بدنه درخواست ارسال کنیم.

 

فایل پیوست

محمدرضا رحیمی

توسط

محمدرضا رحیمی

3 آبان 99

2
حذف شده

سلام و احترام

اگه امکانش هست یه خورده بیشتر توضیح بدید تا بتونم بهتون کمک کنم

فایل پیوست

امیر صالحی

توسط

امیر صالحی

26 مهر 99

حذف شده
استاد جای اینکه اطلاعات به وسیله post بفرسته مثل ارسال form و بعد با POST_$ اطلاعت رو دریافت کنه اطلاعات روی بدنه (raw) درخواست فرستاد و با file_get_contents("php://input") اطلاعات رو دریافت کرد چه تفاوتی بین file_get_contents("php://input") و POST_$ هست
Daniyal Amiri

26 مهر 99

2
حذف شده

دانیال جان سلام.
ببین آرایه سوپرگلوبال post فقط میتونه دیتاهایی که این هدر ها رو داشته باشن دریافت بکنه:
application/x-www-form-urlencoded
multipart/form-data

که اینها هم از طریق فرم هایی که متد ارسالشون post هست روی هدر قرار میگیره

(دلیلش هم اینه که اون زمانیکه این قاعده رو ست کردن هنوز مباحثی مثل AJAX و جیسون وجود نداشته)

 

بعدها که جیسون اومده و برای انتقال دیتا ازش استفاده کردن اومدن یه روش جدید رو برای دریافت دیتاهایی که هدر application/json رو دارن (داده هایی که بصورت جیسون ارسال میشن) معرفی کردن که همون  ("file_get_contents("php://input هست.

 

امیدوارم تا حدودی با تفاوتشون آشنا شده باشی...

فایل پیوست

0
حذف شده

سلام 

وقتی که ما body رای روی  x-www-form-urlencoded  تنظیم کنیم . متن به صورت ساده یا /ASCII (۱۲۸ کارکتر) ارسال میشود این بصورت پیش فرض تنظیم هست ،در  این روش تمام data بصورت key_value تبدیل میشود.

 مثل (name=Arash &age =۲۴&work=Student) که با post_$ قابل دریافتن. 

 

ولی اگر میخوای data باینری بزرگ تر  // non -Acii ارسال کنی میتوانی از قابلیت Raw استفاده کنی چون مشکلی با انواع فرمت نداره و تمام فرمت را پشتبانی میکنه بدونه چیزی که تغییر بده. قابلیت انواع فرمت ها را دارد بطور مثال ( text, json, xml, html, ) و هیچ مشکلی برا ارسال ندارد. و بخاطر همین از  php://input استفاده میکنم چون باینری بزرگ هست.

 

 

منبع:

۱)stackoverflow

۲)programmersought

 

 

موفق باشی.

فایل پیوست

آرش مکینیان

توسط

آرش مکینیان

7 تیر 00