پارس جوم ::  انجمن های تخصصی جوملا
ارسال درخواست به صورت جیسون در زبان php - نسخه‌ی قابل چاپ

+- پارس جوم :: انجمن های تخصصی جوملا (https://forums.parsjoom.ir)
+-- انجمن: آموزش (/forum-25.html)
+--- انجمن: آموزش پی اچ پی (/forum-28.html)
+--- موضوع: ارسال درخواست به صورت جیسون در زبان php (/thread-21582.html)



ارسال درخواست به صورت جیسون در زبان php - hamzeh12hh - ۱-۷-۱۳۹۸ ۰۲:۳۶ صبح

ارسال درخواست json به همراه پارامتر های مورد نظر

برای ارتباط با api وب سایت ها و دریافت سرویس مورد نظر، گاهی لازم است تعدادی پارامتر ب همراه مقدارشان را به یک ادرس خاص ارسال کرده و پاسخ مورد نظر خود را دریافت کنید.

به عنوان یک مثال ساده، درگاه پرداخت دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
در بخش دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
خود برای دریافت شناسه پرداخت چنین چیزی را از کاربران خواسته است:

نقل قول: دریافت شناسه پرداخت:
برای این منظور باید یک درخواست به صورت JSON یا FORM_DATA به آدرس زیر ارسال کنید. مقادیری که باید ارسال شوند به شرح زیر می‌باشد:

کد php:
https://poolam.ir/invoice/request
}
,
"api_key":"api_key"
,"amount":amount
"return_url":"return_url"


و پارامتر های ارسالی را نیز ب شرح زیر تعریف کرده است:

نقل قول: api_key: شناسه ترمینال

amount: مبلغ (به ریال)

return_url: آدرس بازگشت

برای ارسال درخواست به صورت json می توانید به شکل زیر عمل کنید:

کد php:
$result json_decode(file_get_contents("https://poolam.ir/invoice/request?api_key=yourapi_key&amount=youramount&return_url=yourreturn_url
"
),true); 

یعنی بعد از ادرس مورد نظر یک علامت سوال ? قرار داده و سپس پارامتر ها را به همراه مقادیرشان قرار می دهیم
بین هر پارامتر و مقدارش یک علامت = قرار داده ایم و پارامتر ها را با علامت & از هم جدا کرده ایم
نتیجه حاصل را نیز بر روی متغیر result ذخیره کرده ایم تا بتوانیم از آن استفاده کنیم.

اما حالا سایت مورد نظر چگونه به ما پاسخ خواهد داد و ما چگونه از ان استفاده کنیم؟
وب سایتی ک مثال زدیم در ادامه توضیحاتش پاسخ بازگشتی را ب این صوررت توضیح داده:

نقل قول: بعد از ارسال این درخواست یک آرایه با فرمت JSON در جواب شما ارسال می‌شود. اگر ورودی‌ها صحیح باشند و خطایی رخ ندهد خروجی به صورت زیر خواهد بود:

status: وضعیت (عدد 1 )
invoice_key: شناسه پرداخت

یعنی وب سایت در پاسخ درخواست ارسالی ما دو پارامتر status و nvoice_key را برای ما ارسال می کند که طبق توضیحاتش در صورت درست بودن اطلاعات ارسالی ما پارامتر status مقدار 1 و پارامتر nvoice_key هم شناسه پرداخت را دارا خواهد بود.
برای دریافت این پارامتر ها ما می توانیم به یکی از دو روش زیر عمل کنیم:

کد php:
$status $result['status'];
$invoice_key $result['status']; 

یا

کد php:
$status $result->status;
$invoice_key $result->status

منبع: hbportal.ir