[iOS Dev] Write your own APIClient with AFNetworking

เขียน Blog เก็บไว้ซะหน่อย เกี่ยวกับ AFNetworking
ใครยังไม่รู้จัก หรือยังใช้ไม่เป็นไปอ่านกันที่นี่ก่อนนะครับ 

ปกติแล้วเวลาเรา Request API เนี่ยเราก็จะเรียกพวก Class เหล่านี้มาใช้

ซึ่งเราก็ต้องใส่ Parameters เกี่ยวกับ URL ที่เราจะ Request หลายบรรทัดอยู่
แต่นั่นไม่ใช่ประเด็น ประเด็นคือ ถ้าเราอยากจะเขียน APIClient ขึ้นมาใช้เอง 
เช่น อาจจะมี method ที่เขียนขึ้นมาเฉพาะ เพื่อใช้กับ API เราในหลายๆ รูปแบบ

เริ่มต้นที่ให้เราสร้าง Class ที่ subclass AFHTTPClient ขึ้นมา แล้วจัดการเขียน Singleton method ไว้
(ใครยังไม่รู้จัก Singleton อ่านได้ที่นี่ [iOS Dev] Singleton Design Pattern


จากนั้นใน Implementation ก็เขียน Singleton method ให้เรียบร้อย พร้อมกับคำหนดค่าคงที่สำหรับ Base URL และ API Token ด้วย (ถ้าต้องการใช้งาน)

จากนั้นก็ Override -initWithBaseURL method เพื่อทำการเซตค่าต่างๆ เกี่ยวกับ API ของเรา 
(ในที่นี้ผมใช้ Rails ในการเขียน Back-end และ Response กลับมาเป็น JSON)


จากนั้นเวลาเรียกใช้ก็ง่ายครับ ตัวอย่างจะเป็นกรณี GET Request
ในกรณี POST Request ก็เขียนแบบนี้ พร้อมส่ง Parameters ไปให้ Server ด้วย

ทีนี้ถ้าเห็น Code ด้านบนผมว่าคุณน่าจะรู้แล้วนะ ว่าถ้าจะทำ DELETE, PUT Request ต้องเรียก method ชื่ออะไร ? :P งั้นก็ บ๊ายยยย ... บายยยย

Popular posts from this blog

12 วิธี การบริการและดูแลลูกค้าในร้าน Starbucks

[Android Dev] การติดตั้ง Eclipse+AndroidSDK เพื่อพัฒนาโปรแกรมบน Android

5 TED Talk ที่จะช่วยให้คุณทำงานดีขึ้น