ก่อนจะอธิบายในส่วนของ การใช้งาน API โดย API ย่อมาจาก Application Programming Interface คือการเชื่อมต่อจากระบบหนึ่งไปสู่อีกระบบหนึ่ง หรืออีกอย่างนึงคือ API เป็นตัวประมวลผลซึงมีหน้าที่รับส่งข้อมูลเพื่อทำงานในระบบต่างๆตามที่กำหนดหรือต้องการใช้งาน API นั้นๆ การส่งด้วยวิธี cURL ย่อมาจากคำว่า Client for URLs เป็นคำสั่ง command line ที่ถูกเพิ่มเข้ามาในภาษา PHP ตั้งแต่ vsersion 4.0.2 เป็นต้นมา จุดประสงค์หลักของคำสั่ง cURL ที่ถูกเพิ่มเข้ามาในภาษา PHP ก็เพื่อให้นักพัฒนาสามารถเขียนคำสั่งเพื่อติดต่อสื่อสารกับ Server ซึ่ง phpBBย่อจาก php Bulletin Board เป็นโปรแกรมระบบกระดานสนทนาบนอินเทอร์เน็ตแบบโอเพนซอร์ส ทำงานด้วยภาษาพีเอชพี ควบคู่กับระบบฐานข้อมูล
รูปแบบ การส่งข้อมูล ด้วย วิธี curl
โดยมีสิ่งที่ควรรู้คือ
- url api ที่ต้องการใช้งาน
- รูปแบบข้อมูลที่ต้องการส่ง
- ต้องมีความเข้าใจเรื่อง array กับ object array
การใช้งาน curl จะมี 4 ขั้นตอนคือ
- สร้าง curl resource ด้วยฟังก์ชัน curl_init()
- set option ให้ curl resource ด้วยฟังก์ชัน curl_setopt()
- Execute curl resource ด้วยฟังก์ชัน curl_exec()
- close curl resource ด้วยฟังก์ชัน curl_close()
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'url',//string ของ url ที่ต้องการ
CURLOPT_RETURNTRANSFER => true,//1,true ค่าเป็น 1 หมายถึง return ค่ากลับมาในรูป string
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,//เวลานานที่สุดที่ให้ curl ฟังก์ชันทำงาน
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',ประเภทการส่ง
CURLOPT_POSTFIELDS => '{"name": "ทดสอบ"}',//ข้อมูลที่จะส่งไป
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer {Authorization Key}',
'Content-Type: application/json'
),// array ที่เก็บค่า http header
));
$response = curl_exec($curl);
curl_close($curl);
$response = json_decode($response); แปลง string ที่ได้เป็น object
ผลลัพธ์
ประโยชน์ของการส่ง API :
- ช่วยเป็นสื่อกลางส่งข้อมูลข้าม Server
- ไม่ต้องทำงานข้ามเว็บไซต์ เพียงติดตั้ง API และใช้งานในเว็บไซต์ที่มี API เดียวก็พอ เช่น api สำหรับคำนวนค่าต่างๆ
- ผู้ใช้มีความสะดวกสบายมากขึ้น ไม่ต้องเข้าโปรแกรมหรือ tools ในการทำงานให้ซับซ้อน พอมี api สามารถ เรียก api มาใช้งานในระบบต่างๆ ได้
สรุป การใช้งาน curl เป็นหนึ่งในรูปแบบการส่งข้อมูลของภาษา php ซึ่งในส่วนของ CMS phpBB ทำงานด้วยภาษา PHP จึงสามารถนำมาประยุคต์ใช้งานรวมกันได้ จะมีประสิทธฺภาพมาน้อยแค่ไหนขึ้นอยู่กับ api ที่ต้องการใช้งานและวิธีการเขียนของผู้พัฒนาระบบเอง
อ้างอิง
cURL คืออะไร,[ออนไลน์], https://www.codebee.co.th/labs/curl-คืออะไร-วิธีดึงรายละเอ/
cURL กับ PHP ,[ออนไลน์],https://www.mindphp.com/forums/viewtopic.php?t=28246
api คืออะไร,[ออนไลน์], https://www.mindphp.com/คู่มือ/73-คืออะไร/2038-api-คืออะไร.html
phpBB คืออะไร,[ออนไลน์], https://www.mindphp.com/บทความ/24-cms-php/157-phpbb-คืออะไร.html