15 คำถามและคำตอบสัมภาษณ์ REST API สำหรับปี 2025
คำถามและคำตอบสัมภาษณ์ Rest API สำหรับนักศึกษาใหม่
1) อธิบายว่า REST และ RESTFUL คืออะไร?
REST แสดงถึงการโอนสถานะการเป็นตัวแทน มันเป็นแง่มุมที่ค่อนข้างใหม่ของการเขียน web API
RESTFUL เป็นบริการเว็บที่เขียนขึ้นโดยใช้แนวคิดสถาปัตยกรรม REST ซึ่งเรียกว่าบริการ RESTful โดยเน้นที่ทรัพยากรระบบและวิธีการส่งสถานะของทรัพยากรผ่านโปรโตคอล HTTP ไปยังไคลเอนต์ต่างๆ ที่เขียนด้วยภาษาต่างๆ ในบริการเว็บ RESTFUL สามารถใช้เมธอด HTTP เช่น GET, POST, PUT และ DELETE เพื่อดำเนินการ CRUD ได้
👉 ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบสัมภาษณ์ Rest API >>
2) อธิบายรูปแบบสถาปัตยกรรมในการสร้าง API เว็บ
รูปแบบสถาปัตยกรรมในการสร้างเว็บ API คือ
- HTTP สำหรับการสื่อสารเซิร์ฟเวอร์ไคลเอ็นต์
- XML/JSON เป็นภาษาการจัดรูปแบบ
- URI แบบง่ายเป็นที่อยู่สำหรับบริการ
- การสื่อสารไร้สัญชาติ
3) พูดถึงเครื่องมือใดบ้างที่จำเป็นในการทดสอบ API เว็บของคุณ?
เครื่องมือ SOAPUI สำหรับ SOAP WS และ Firefox ปลั๊กอิน "โปสเตอร์" สำหรับ บริการอันเงียบสงบ.
4) พูดถึงวิธี HTTP ที่ REST รองรับคืออะไร
วิธี HTTP ที่ REST รองรับคือ:
- รับ: มันร้องขอทรัพยากรตาม URL คำขอ ไม่ควรมีเนื้อหาคำขอเนื่องจากจะถูกละทิ้ง บางทีอาจแคชไว้ในเครื่องหรือบนเซิร์ฟเวอร์ก็ได้
- โพสต์: ส่งข้อมูลไปยังบริการเพื่อการประมวลผล โดยทั่วไปควรส่งคืนทรัพยากรที่แก้ไขหรือใหม่
- วาง: ที่ URL คำขอจะอัปเดตทรัพยากร
- ลบ: ที่ URL คำขอ ระบบจะลบทรัพยากรออก
- ตัวเลือก: โดยระบุว่าเทคนิคใดได้รับการสนับสนุน
- ศีรษะ: เกี่ยวกับ URL คำขอจะส่งคืนข้อมูลเมตา
ลองมาดูจากมุมมองของบันทึกเดียว สมมติว่ามีบันทึกพนักงานซึ่งมีพนักงานหมายเลข 1
การกระทำต่อไปนี้จะมีความหมายตามลำดับ
- POST– สิ่งนี้จะไม่สามารถใช้ได้เนื่องจากเรากำลังดึงข้อมูลของพนักงาน 1 ที่สร้างขึ้นแล้ว
- GET– จะใช้เพื่อรับรายละเอียดของพนักงานที่มีหมายเลขพนักงานเป็น 1 โดยใช้บริการเว็บ RESTful
- PUT– จะใช้สิ่งนี้เพื่ออัปเดตรายละเอียดของพนักงานโดยมีหมายเลขพนักงานเป็น 1 โดยใช้บริการเว็บ RESTful
- ลบ – ใช้เพื่อลบรายละเอียดของพนักงานที่มีหมายเลขพนักงานเป็น 1
5) พูดถึงว่าคุณสามารถใช้คำขอ GET แทน PUT เพื่อสร้างทรัพยากรได้หรือไม่
ไม่ คุณไม่ควรใช้ PUT สำหรับ GET การดำเนินการ GET ควรมีสิทธิ์ดูเท่านั้น ในขณะที่ทรัพยากร PUT ใช้เพื่ออัปเดตข้อมูล
6) กล่าวถึงทรัพยากรในสถาปัตยกรรม REST คืออะไร
ทรัพยากรจะถูกระบุโดย URL แบบลอจิคัล มันเป็นองค์ประกอบสำคัญของการออกแบบ RESTful ไม่เหมือนกับบริการเว็บ SOAP ใน REST คุณดูข้อมูลผลิตภัณฑ์เป็นทรัพยากร และทรัพยากรนี้ควรมีข้อมูลที่จำเป็นทั้งหมด
คำถามและคำตอบสัมภาษณ์ Rest API สำหรับผู้มีประสบการณ์
7) พูดถึงความแตกต่างระหว่าง AJAX และ REST คืออะไร?
AJAX | REST |
---|---|
ใน Ajax คำขอจะถูกส่งไปยังเซิร์ฟเวอร์โดยใช้วัตถุ XMLHttpRequest การตอบสนองถูกใช้โดย Javaโค้ดสคริปต์เพื่อเปลี่ยนแปลงหน้าปัจจุบันแบบไดนามิก | REST มีโครงสร้าง URL และรูปแบบคำขอ/การตอบกลับที่เกี่ยวข้องกับการใช้ทรัพยากร |
Ajax คือชุดของเทคโนโลยี เป็นเทคนิคการอัปเดตส่วนต่างๆ ของ UI แบบไดนามิกโดยไม่ต้องโหลดหน้าซ้ำ | REST เป็นสถาปัตยกรรมซอฟต์แวร์ประเภทหนึ่งและเป็นวิธีให้ผู้ใช้ร้องขอข้อมูลหรือข้อมูลจากเซิร์ฟเวอร์ |
Ajax กำจัดการโต้ตอบระหว่างลูกค้าและเซิร์ฟเวอร์แบบอะซิงโครนัส | REST ต้องการการโต้ตอบระหว่างลูกค้าและเซิร์ฟเวอร์ |
8) พูดถึงคุณลักษณะสำคัญบางประการของ REST หรือไม่
ลักษณะสำคัญบางประการของ REST ได้แก่
- REST ไม่มีสถานะ ดังนั้นเซิร์ฟเวอร์จึงไม่มีสถานะ (หรือข้อมูลเซสชัน)
- ด้วย REST API ที่ใช้งานได้ดี เซิร์ฟเวอร์สามารถรีสตาร์ทระหว่างการโทรสองครั้ง เนื่องจากข้อมูลทั้งหมดถูกส่งไปยังเซิร์ฟเวอร์
- เว็บเซอร์วิสส่วนใหญ่ใช้ POST เพื่อดำเนินการ ในขณะที่ REST ใช้ GET เพื่อเข้าถึงทรัพยากร
9) พูดถึงรูปแบบการรวมแอปพลิเคชันที่แตกต่างกันคืออะไร?
รูปแบบการบูรณาการที่แตกต่างกันได้แก่
- ฐานข้อมูลที่ใช้ร่วมกัน
- การถ่ายโอนไฟล์เป็นกลุ่ม
- การเรียกใช้ขั้นตอนระยะไกล (RPC)
- การสลับข้อความแบบอะซิงโครนัสผ่านมิดเดิลแวร์ที่เน้นข้อความ (MOM)
10) อธิบายว่า JAXB เกี่ยวข้องกับ RESTful web API อย่างไร
JAXB ย่อมาจาก java arch สำหรับการผูก XML
11) พูดถึงความแตกต่างระหว่าง PUT และ POST?
“PUT” วางไฟล์หรือทรัพยากรไว้ที่ URI เฉพาะและอยู่ที่ URI นั้นทุกประการ หากมีไฟล์หรือทรัพยากรอยู่ที่ URI นั้นแล้ว PUT จะเปลี่ยนไฟล์หรือทรัพยากรนั้น หากไม่มีทรัพยากรหรือไฟล์ PUT จะสร้างขึ้นมา
POST ส่งข้อมูลไปยัง URI เฉพาะและคาดว่าทรัพยากรที่ URI นั้นจะจัดการกับคำขอ เว็บเซิร์ฟเวอร์ ณ จุดนี้สามารถตัดสินใจได้ว่าจะทำอย่างไรกับข้อมูลในบริบทของทรัพยากรที่ระบุ
PUT เป็น idempotent ความหมาย การเรียกใช้กี่ครั้งก็ได้จะไม่ส่งผลกระทบต่อทรัพยากร
อย่างไรก็ตาม POST ไม่ใช่ idempotent ซึ่งหมายความว่าหากคุณเรียกใช้ POST หลายครั้ง POST จะสร้างทรัพยากรมากขึ้นเรื่อยๆ
12) พูดถึงภาษามาร์กอัปใดที่สามารถใช้ใน web api ที่สงบได้
JSON และ XML เป็นภาษามาร์กอัปสองภาษาที่สามารถใช้ใน Restful Web API
13) พูดถึงความแตกต่างระหว่าง RPC หรือบริการเว็บสไตล์เอกสารคืออะไร? คุณจะตัดสินใจได้อย่างไรว่าจะเลือกอันไหน?
ในบริการเว็บรูปแบบเอกสาร เราสามารถส่งข้อความ XML เป็นส่วนหนึ่งของคำขอ SOAP ซึ่งไม่สามารถทำได้ในบริการเว็บสไตล์ RPC บริการเว็บรูปแบบเอกสารมีความเหมาะสมที่สุดในบางแอปพลิเคชันที่ข้อความ XML ทำหน้าที่เป็นเอกสารและเนื้อหาของเอกสารนั้นสามารถเปลี่ยนแปลงได้ และจุดประสงค์ของบริการเว็บไม่ได้ขึ้นอยู่กับเนื้อหาของข้อความ XML
14) พูดถึง JAX-WS และ JAX-RS คืออะไร
ทั้ง JAX-WS และ JAX-RS เป็นไลบรารี (API) สำหรับทำการสื่อสารในรูปแบบต่างๆ ค่ะ JavaJAX-WS เป็นไลบรารีที่ใช้ในการสื่อสาร SOAP ใน JAVA และ JAX-RS ช่วยให้คุณสามารถสื่อสาร REST ใน JAVA ได้
15) แสดงรายการเครื่องมือหรือ API สำหรับการพัฒนาหรือทดสอบ web api?
เครื่องมือทดสอบสำหรับบริการเว็บสำหรับ REST API ประกอบด้วย
- บริการเว็บ Spring REST โดยใช้ MVC
- เจอร์ซีย์ API
- ซีเอ็กซ์เอฟ
- แกน
- ที่พักพิง
16) พูดถึงความแตกต่างระหว่าง SOAP และ REST คืออะไร?
สบู่ | REST |
---|---|
SOAP เป็นโปรโตคอลที่คอมพิวเตอร์สองเครื่องสื่อสารกันโดยการแชร์เอกสาร XML | Rest เป็นสถาปัตยกรรมและการออกแบบบริการสำหรับสถาปัตยกรรมซอฟต์แวร์บนเครือข่าย |
SOAP อนุญาตเฉพาะ XML | REST รองรับรูปแบบข้อมูลที่แตกต่างกันมากมาย |
การอ่านแบบ SOAP ไม่สามารถแคชได้ | การอ่าน REST สามารถแคชได้ |
SOAP เปรียบเสมือนแอปพลิเคชันเดสก์ท็อปแบบกำหนดเองที่เชื่อมต่อกับเซิร์ฟเวอร์อย่างใกล้ชิด | ไคลเอนต์ REST เป็นเหมือนเบราว์เซอร์มากกว่า มันรู้วิธีวิธีการที่เป็นมาตรฐานและแอปพลิเคชันจะต้องพอดีกับมัน |
SOAP ช้ากว่า REST | REST เร็วกว่า SOAP |
มันทำงานบน HTTP แต่ห่อหุ้มข้อความ | ใช้ส่วนหัว HTTP เพื่อเก็บข้อมูลเมตา |
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)