Kotlin Multiplatform Academy · บทเรียน

คำขอ GET แรกของคุณ

ดึง JSON จาก API ในโค้ด shared

บทเรียน 2 จาก 413 ขั้นตอน

คำขอ GET แรกของคุณ เป็นบทเรียน Kotlin Multiplatform Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Kotlin Multiplatform Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Kotlin Multiplatform Academy มีบทเรียนทั้งหมด 4 บทเรียน

ดึงข้อมูลจากโค้ดที่ใช้ร่วมกัน

เมื่อเตรียมไคลเอนต์พร้อมแล้ว ตอนนี้คุณสามารถส่ง คำขอ GET แรกจาก commonMain และนำไปใช้ซ้ำในแอปทั้งสองได้ 🚀

การเรียกเครือข่ายเป็นแบบ Suspend

คำขอ Ktor ทุกคำขอเป็นฟังก์ชันแบบ suspend จึงไม่บล็อกเธรด และทำงานร่วมกับโครูทีนได้อย่างเป็นธรรมชาติ

suspend fun load() { /* request here */ }

เรียก get ด้วย URL

คำขอที่ง่ายที่สุดคือส่งสตริง URL ให้กับ client.get ซึ่งจะส่งคืน HttpResponse ที่คุณสามารถอ่านข้อมูลได้

val response = client.get("https://api.example.com/users")

อ่านรหัสสถานะ

ตรวจสอบว่าการเรียกสำเร็จหรือไม่ด้วยการอ่าน response.status ก่อนที่จะเชื่อถือข้อมูลในเนื้อหาคำขอ

if (response.status.value == 200) { /* ok */ }

อ่านเนื้อหาเป็นข้อความ

หากต้องการอ่านข้อมูลที่ส่งกลับมา ให้เรียก bodyAsText ซึ่งเป็นการดำเนินการแบบ suspend และส่งคืนการตอบกลับดิบเป็น String

val json: String = response.bodyAsText()

เนื้อหาที่มีชนิดข้อมูลอ่านง่ายกว่า

Ktor สามารถดีซีเรียลไลซ์ข้อมูลเข้าเป็นชนิดข้อมูลโดยตรงด้วย body ทำให้คุณไม่ต้องแยกวิเคราะห์ข้อความด้วยตนเองในภายหลัง

val users: List<User> = response.body()

GET ในบรรทัดเดียว

คุณยังสามารถข้ามออบเจ็กต์การตอบกลับทั้งหมด และให้ get ส่งคืนผลลัพธ์ที่มีชนิดข้อมูลในนิพจน์เดียวได้

val users: List<User> = client.get(url).body()

ห่อหุ้มไว้ในฟังก์ชัน

ใส่การเรียกไว้ใน ฟังก์ชัน suspend ที่เป็นระเบียบ เพื่อให้แอปทั้งสองใช้ตรรกะการดึงข้อมูลเดียวกันได้อย่างแท้จริง

suspend fun fetchUsers() = client.get(url).body<List<User>>()

เรียกใช้จากขอบเขต

เนื่องจากการเรียกเป็นแบบ suspend คุณจึงต้องเริ่มการทำงานภายใน ขอบเขตโครูทีน แทนการเรียกจากโค้ดแบบทำงานพร้อมกันตามปกติ

scope.launch { val users = fetchUsers() }

ทำงานได้ในทั้งสองแอป

ตอนนี้ฟังก์ชันเดียวนี้ทำงานได้ทั้งบน Android และ iOS โดยไม่ต้องเปลี่ยนแปลง เพราะความแตกต่างของกลไกอยู่ต่ำกว่าชั้น API

เก็บการเรียกไว้ในคลังข้อมูล

สำหรับแอปจริง ให้ซ่อนการเรียก get ดิบไว้ภายใน คลังข้อมูล เพื่อไม่ให้ส่วนติดต่อผู้ใช้เข้าถึง Ktor โดยตรง

ตรวจสอบความเข้าใจ

คุณจะอ่านข้อมูลดิบที่ส่งกลับมาเป็น String ได้อย่างไร

สรุป

คำขอ GET เป็นการเรียกแบบ suspend: ขอ URL ตรวจสอบสถานะ แล้วอ่านเนื้อหาเป็นข้อความหรือออบเจ็กต์ที่มีชนิดข้อมูล ฟังก์ชันเดียวรองรับแอปทั้งสอง

เริ่มต้นได้ฟรี

เรียนรู้ Kotlin ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

คำถามที่พบบ่อย

บทเรียน “คำขอ GET แรกของคุณ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “คำขอ GET แรกของคุณ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Kotlin Multiplatform Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Kotlin Multiplatform Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “คำขอ GET แรกของคุณ”

ดึง JSON จาก API ในโค้ด shared คุณปฏิบัติ Kotlin Multiplatform Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Kotlin Multiplatform Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Kotlin Multiplatform Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “คำขอ GET แรกของคุณ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Kotlin Multiplatform Academy นี้ได้ไหม

ได้ บทเรียน Kotlin Multiplatform Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เพิ่ม Ktor และเลือกเอนจินตามแพลตฟอร์ม
  2. คำขอ GET แรกของคุณ
  3. POST, เฮดเดอร์ และพารามิเตอร์คิวรี
  4. การหมดเวลา การบันทึก日志 และ URL พื้นฐาน
← กลับไปที่ Kotlin Multiplatform Academy