ดึงอัตราแลกเปลี่ยนใน Swift ด้วย URLSession
ใช้ URLSession, Codable และ URLComponents พร้อมเก็บข้อมูลเวลาที่อัปเดต.
ให้ URLSession จัดการเครือข่ายและ Codable จัดการ JSON คีย์จริงควรอยู่ที่ server ไม่ใช่ในแอป iOS, macOS หรือ watchOS.
Key points
กำหนด response model: เก็บ rates, source, market_session และ data_updated_at ใน model และใช้ Decimal กับจำนวนเงิน.
เก็บคีย์ไว้ที่ server: แอปมือถือเรียก backend ของคุณ แล้ว backend เติม Authorization ส่วน Swift ฝั่ง server อ่านคีย์จาก environment ได้.
จัดการสถานะและ freshness: ตรวจสอบ HTTP status ก่อน decode แยก 401 กับ 429 และแสดงเวลาและ source ให้ผู้ใช้เห็น.
กำหนด response model
เก็บ rates, source, market_session และ data_updated_at ใน model และใช้ Decimal กับจำนวนเงิน.
เก็บคีย์ไว้ที่ server
แอปมือถือเรียก backend ของคุณ แล้ว backend เติม Authorization ส่วน Swift ฝั่ง server อ่านคีย์จาก environment ได้.
จัดการสถานะและ freshness
ตรวจสอบ HTTP status ก่อน decode แยก 401 กับ 429 และแสดงเวลาและ source ให้ผู้ใช้เห็น.
เก็บบริบทของอัตราไว้ด้วย
รายงานรายวันใช้วันละครั้ง ส่วน dashboard อาจใช้ทุกชั่วโมง เมื่อเจอ 429 ให้ลดความถี่ ไม่ใช่สร้าง retry ทันที.
- เก็บอัตราพร้อม source และเวลา.
- ใช้กับ automation และการวิเคราะห์.
- อย่าใช้เป็นราคาที่ execute ได้.
ER
exchangerate.dev
คู่มือการเชื่อมต่อสำหรับนักพัฒนา