8 پاسخ

ساخت apiبا php

با سلام و عرض ادب ، میخواستم بدونم میتونم با پی اچ پی ، api بنویسم

برای مثال محصولات رو وارد کنم
و بیام با vue.js ‌‌ به API ریکئوست بزنم و محصولات توی api رو دریافت کنم


ثبت پرسش جدید
MagicalDev
تخصص : Laravel Developer
@magicaldev1 1 سال پیش مطرح شد
0

درود
بله میتونید .
با لاراول توسعه بدید که کار راحت تر و امنیت بیش تر بشه .
با ویو هم از api توسعه داده شده استفاده کنید .
موفق باشید


oss_vahid
تخصص : wp developer
@ossvahid 1 سال پیش مطرح شد
0

سلام بله میشه اولا باید به mysqli و sql نویسی کمی مسلط باشید چون قراره کویری بزنید روی دیتابیس

هم آجاکس میتونید هندل کنید هم با curl
البته rest api رو من دیدم با curl و اینجور چیزا هندل میکنن

با درخواست آجاکس هم میشه


سید آرین سید مومن
تخصص : junior security researcher
@arianseyed 1 سال پیش مطرح شد
0

بسیار ممنون ، بله چند تا دوره با لاراول دیده بودم که api می‌نوشتن ولی خب لاراول یکم برام سخته


سید آرین سید مومن
تخصص : junior security researcher
@arianseyed 1 سال پیش مطرح شد
1

بله دستورات مای اسکیو ال را تا حد خوبی بلدم ولی باید چیکار کنم، مثلاً بیام کوئری بزنم و fech arry اش رو print_r کنم ؟

اگر امکانش هست لطفاً کمی بیشتر راهنمایی کنید

با سپاس🙏


oss_vahid
تخصص : wp developer
@ossvahid 1 سال پیش مطرح شد
0

سلام
ی فایل میسازی مثلا بنام api خب داخل این فایل شما میایی یکسری کد mysqli و php مینویسی و به دیتابیس متصلش میکنی این شد راه ارتباطی ما فایلی رو که بهت گفتم قراره ما بهش درخواست بزنیم

ی فرم با html میسازی و ی ورودی رو ایجاد میکنی این ورودی میتونه چیزی باشه که کاربر وارد میکنه یا هرچی بعدش چیکار میکنیم؟

امنیت

ما می‌آییم مقدار این ورودی رو میگیرم و خیلی خوب تمیزش میکنیم چون قراره این. ورودی بره داخل دیتابیس ما حالا یا ممکنه بره ذخیره بشه یا صرفا ی درخواست هستش برای اینکه ببینی چیزی موجوده داخل دیتابیس یا نه پس امنيتش داخل api نویسی خیلی مهمه برای جلوگیری از نوشتن کدهای جاوااسکریپت که خب php توابع خاص خودش رو داره مثل strip_tags و... و برای جلوگیری از
حملات sql injection باید از prepare استفاده کنی یا mysqli_real_esace_string بزنی

یکی از نکات مهم امنیتی دیگه اینکه چک کنی ببینی درخواست آجاکسی که زده میشه ‌؟ البته اگه میخای با آجاکس هندل کنی میگم
اینکه ببینی درخواست آجاکس حتما از ی صفحه خاص بیاد و جلوی درخواست های آجاکسی که از صفحات دیگه (هر صفحه ناشناس یا... ) رو بگیری

این شد نکات امنیتیش

شما ی فایل ساختی بنام api و اتصال به دیتابیس رو فعال کردی حالا باید از طریق همون فرمی که ساختی بیایی با جاوااسکریپت یا جکوری با اون آدرسش ریکوست بزنی

مثلا آدرس فایل اینه
https://mysite.com/api.php
میایی و از طریق آجاکس به این فایل درخواست میزنی و وصل میشی به api ی نکنه مهم ست کردن action هستش باید یک action داخل درخواست آجاکسی که برای این فایل میفرستی ست کنی در کنار درخواست های دیگه مثال میزنم میخای ی درخواست بزنی ببینی فلان کتاب داخل دیتابیس وجود داره یا نه پس باید
Action رو بزاری مثلا رو search_book_action بعد میای داخل فایل API که ساختی میگی آقا درخواست
اکشن من مقدارش اگه این بود بیا داخل کتاب ها جستجو کن یا اگه درخواست این بود بیا فلان کارو بکن از طریق همین if و switch

اینطوری

if
($_REQUEST['action'] == 'search_book')
{

}

نکنه مهم حتما از isset استفاده کن قبلش ببینی درخواست حتما ست شده باشه

خب درخواست آجاکس رو زدی حالا ی خروجی میگیره معمولا خروجی گرفتن رو از exit استفاده میکنن یعنی وقتی درخواست رو زدی مقدار رو گرفتی میریزی داخل exit و اون میشه خروجی api بعد میری از طریق jQuery چک میکنی اگه درخواست success بود مقدار رو دریافت میکنی ترجیحا داخل فایل api مقدار درخواست شده رو json_encode بزن و بریز داخل exit با jQuery از parseJSON استفاده کن تا مقدار جیسون رو ابکت بگیری و استفاده کنی


MagicalDev
تخصص : Laravel Developer
@magicaldev1 1 سال پیش مطرح شد
0

@ossvahid
وحید عزیز به نظرم دیگه روش کار mysqli منسوخ شده باشه . بهتره اگه میخواین با php خام بنویسید از pdo استفاده کنید.


oss_vahid
تخصص : wp developer
@ossvahid 1 سال پیش مطرح شد
0

Pdo ی خوبی که داره اینکه میشه باهاش به دیتابیس های زیادی متصل شد و سرعت خوبی داره لیکن برای کسایی که صرفا با mysqli سرکار دارن pdo یجورایی اضافه کاریه در ضمن نمیدونم کی گفته mysqli منسوخ شده یکم برام عجیب بود شاید کدنویسی mysqli با php به صورت رویه ایی کمی غیرحرفه ایی باشه ولی اگه از طریق روش شعی گرایی بخای کار کنی خیلیم عالی هستش و سرعت بالایی داره
@magicaldev1


MagicalDev
تخصص : Laravel Developer
@magicaldev1 1 سال پیش آپدیت شد
1

@ossvahid
آره من منظورم روش شی گراییش نبود . منظورم فقط حالت تابع محورش بود . چون خیلی وقته شاید چندین سال ندیدم جایی استفاده بشه ازش به غیر از آموزش های ایرانی اونا هم البته قدیمی ها .


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام