หากท่านปรารถนาที่จะสร้าง อินเทอร์เฟซโปรแกรมแอปพลิเคชัน (API) สำหรับเว็บแอปพลิเคชันจะใช้ RESTful Application Program Interface (API) คืออะไร? Application Program Interface เป็นตัวกลางระหว่างซอฟต์แวร์สองแอพพลิเคชั่น ช่วยให้แอพพลิเคชั่นซอฟต์แวร์สองโปรแกรมสามารถสื่อสารระหว่างกันได้อย่างปลอดภัย แอปพลิเคชัน API ทั่วไปในชีวิตประจำวันกำลังใช้ Facebook ใช้แอปพลิเคชันแชท หรือใช้แอปพยากรณ์อากาศบนโทรศัพท์มือถือ
ให้เราสังเกตตัวอย่างหนึ่งอย่างตรงไปตรงมาเพื่อทำความเข้าใจว่า API คืออะไร? ขอพิจารณาตัวอย่างของร้านอาหาร. เราไปร้านอาหารและกินอาหารที่เราเลือก สิ่งที่เราทำคือสังเกตบัตรเมนูและบอกบริกรเกี่ยวกับรายการที่คุณเลือกจากเมนู พนักงานเสิร์ฟจะแจ้งคำสั่งซื้อของคุณไปยังแผนกครัว และอาหารของคุณจะถูกจัดเตรียม หลังจากอาหารพร้อม พนักงานเสิร์ฟที่โต๊ะของคุณ ที่นี่บริกรเป็นส่วนติดต่อระหว่างคุณกับแผนกครัว สิ่งเดียวกันนี้เกิดขึ้นในขณะที่ทั้งสองระบบสื่อสารกัน
อินเทอร์เฟซโปรแกรมแอปพลิเคชัน (API) แบ่งออกเป็นสี่ประเภทหลัก ได้แก่ OpenAPI, Partner API, Internal API และ Composite API ทุกคนได้รับอนุญาตให้เข้าถึง OepnAPI ได้ เนื่องจากสามารถเข้าถึงได้แบบสาธารณะ ใน Partner API ผู้ใช้รายหนึ่งต้องการสิทธิ์ที่เหมาะสมในการเข้าถึง เนื่องจากไม่ได้พัฒนาเพื่อการใช้งานสาธารณะ API ภายในได้รับการออกแบบมาเป็นพิเศษสำหรับการใช้งานภายในของบริษัท สุดท้ายนี้ โดยทั่วไปแล้วคอมโพสิต API จะใช้เพื่อเพิ่มความเร็วในการดำเนินงานและประสิทธิภาพของบริษัท
API อีกประเภทหนึ่งคือ API ของบริการเว็บ API บริการเว็บหลักสี่อย่าง SOAP, XML-RPC, JSON-RPC และ REST SOAP หมายถึง a โปรโตคอลการเข้าถึงวัตถุอย่างง่าย ซึ่งถ่ายโอนข้อมูลโดยใช้รูปแบบ XML SOAP API เกี่ยวข้องกับการใช้ ภาษานิยามบริการเว็บ (WSDL) สำหรับกำหนดอินเทอร์เฟซ API บริการเว็บอื่นคือ XML-RPC . ตามชื่อของมัน มันใช้แบบฟอร์ม XML สำหรับการแบ่งปันข้อมูล XML-RPC API นั้นง่ายกว่าและเข้าถึงได้ง่ายกว่า SOAP API
API เว็บเซอร์วิสตัวต่อไปคือ JSON-RPC . เป็น API เดียวกับ XML แต่ใช้รูปแบบ JSON สำหรับการแชร์ข้อมูล สุดท้าย REST API นั้นแตกต่างจากทั้งสามข้างต้น เป็นการรวบรวมมาตรฐานสถาปัตยกรรม REST API เรียกอีกอย่างว่า RESTful API เป็นหนึ่งใน API ของบริการเว็บที่ใช้กันทั่วไป เนื่องจากต้องการแบนด์วิดท์ที่น้อยกว่ามาก
ในบทความนี้ เราจะเห็นคำแนะนำอย่างรวดเร็วเกี่ยวกับบริการเว็บ RESTful โพสต์นี้จะช่วยให้คุณเรียนรู้ทั้งหมดเกี่ยวกับบริการเว็บ RESTful เราได้อธิบายแนวคิดบริการเว็บ RESTful อย่างตรงไปตรงมามากขึ้นด้วยตัวอย่างง่ายๆ สิ่งหนึ่งที่ต้องจำก่อนเริ่ม เข้าใจ RESTful API คือคุณต้องมีความรู้ที่ดีขึ้นเกี่ยวกับภาษาการเขียนโปรแกรม Java, HTML, CSS, AJAX และ Text Editor เนื่องจาก RESTful เป็นบริการเว็บสำหรับการพัฒนาเว็บแอปพลิเคชัน เรามาเริ่มกวดวิชา RESTful API กันเถอะ
สารบัญ
- RESTful Web Service API คืออะไร
- การทำงานของ RESTful Web Service API
- เมธอด HTTP ใน RESTful web service API
- คุณสมบัติและข้อจำกัดของสถาปัตยกรรม RESTful API
- การตั้งค่าสภาพแวดล้อมสำหรับ RESTful Web Services
- ตัวอย่างแรก RESTful – Jersey (JAX-RS)
- ข้อความใน RESTful Web Service API
- ทรัพยากรใน RESTful Web Service API
- การระบุที่อยู่ใน RESTful Web Service API
- Java (JAX-RS) ใน RESTful Web Service API
- การไร้สัญชาติและการแคช RESTful Web Service API
- เมธอด HTTP และการทำงานใน RESTful API
- บทสรุป
- บทความแนะนำ
RESTful Web Service API คืออะไร
ก่อนที่เราจะรู้ว่า RESTful API คืออะไร เราต้องรู้ก่อนว่าเว็บเซอร์วิสจริงๆ คืออะไร อา บริการเว็บ เป็นชุดของมาตรฐานหรือหลักการที่จำเป็นสำหรับการแบ่งปันหรือแลกเปลี่ยนข้อมูลระหว่างระบบ ทุกวันนี้ เราใช้แอปพลิเคชั่นหลายตัวบนโทรศัพท์มือถือและเดสก์ท็อปของเรา แอปพลิเคชันเหล่านี้เขียนด้วยภาษาโปรแกรมมากมาย และยังคงทำงานบนระบบปฏิบัติการที่แตกต่างกัน บริการเว็บช่วยให้คุณสามารถเข้าถึงแอปพลิเคชันซอฟต์แวร์เฉพาะบนระบบปฏิบัติการต่างๆ
RESTful API เป็น API ของบริการเว็บ ประกอบด้วยชุดของมาตรฐานสถาปัตยกรรมและใช้โปรโตคอล HTTP สำหรับการเข้าถึงและใช้ข้อมูลเฉพาะ REST แปลว่า การโอนสถานะตัวแทน . ใน RESTful API ทุกองค์ประกอบที่เกี่ยวข้องจะถือเป็นทรัพยากร คุณสามารถเข้าถึงทรัพยากรเหล่านี้ได้โดยใช้ โปรโตคอล HTTP วิธีการ
มีเซิร์ฟเวอร์และไคลเอนต์ที่เกี่ยวข้องกับ RESTful API ไคลเอ็นต์ของ REST API สามารถเข้าถึงทรัพยากรที่เซิร์ฟเวอร์จัดเตรียมไว้ให้และจัดการได้ ทรัพยากรแต่ละรายการมี URI หรือรหัสสากลที่แยกจากกัน การใช้ URI หรือ Global ID ทำให้เราระบุทรัพยากรใน RESTful API ได้ URI หมายถึง a Uniform Resource Identifier . คุณสามารถใช้รูปแบบข้อความ, XML.JSON หรือ JSON ใน REST API สำหรับการแสดงทรัพยากร
โดยทั่วไปแล้ว บริการเว็บ RESTful จะใช้โดยผู้บริโภคระบบคลาวด์ ทำให้พวกเขาสามารถเข้าถึงและจัดการบริการเว็บได้ REST API ทำหน้าที่เป็นตัวเลือกที่ต้องการมากที่สุดสำหรับการสร้าง API ที่มีประสิทธิภาพ API ที่สร้างขึ้นโดยใช้สถาปัตยกรรม REST ช่วยให้ผู้ใช้สามารถโต้ตอบกับบริการคลาวด์ได้อย่างมีประสิทธิภาพ เว็บไซต์ยอดนิยมบางเว็บไซต์ที่ใช้บริการเว็บ RESTful เพื่อสร้าง API ของพวกเขาคือ Amazon Web Services (AWS), Twitter, LinkedIn และ Google
การทำงานของ RESTful Web Service API
เราได้สังเกตคำอธิบายสั้น ๆ ของบริการเว็บ RESTful ตอนนี้ แจ้งให้เราทราบถึงการทำงานของ RESTful API RESTful API แบ่งทุกธุรกรรมระหว่างสองแอปพลิเคชันออกเป็นโมดูลขนาดเล็กหลายโมดูล ในที่นี้ ธุรกรรมหมายถึงการแลกเปลี่ยนข้อมูลหรือข้อมูล แต่ละโมดูลเก็บข้อมูลที่สำคัญของการทำธุรกรรม ดังนั้น นักพัฒนาจึงรู้สึกสะดวกสบายและยืดหยุ่นในการสร้าง API สำหรับเว็บแอปพลิเคชันใดๆ
วันนี้ หลายบริษัท เช่น Cloud Data Management Interface (CDMI), AmazonS3 เป็นต้น เสนอโมเดลเฉพาะสำหรับการพัฒนา API มีคำสั่งมากมายในบริการเว็บ RESTful API สำหรับการเข้าถึงทรัพยากร การแสดงทรัพยากรจะกำหนดสถานะของทรัพยากรเฉพาะในเวลาประทับที่กำหนด
เมธอด HTTP ใน RESTful web service API
API บริการเว็บ RESTful ใช้โปรโตคอล HTTP สำหรับการเข้าถึงและจัดการทรัพยากร มีสี่วิธี HTTP หลักที่ใช้ในบริการเว็บ RESTful ได้แก่ GET, PUT, POST, DELETE แจ้งให้เราทราบโดยย่อแต่ละวิธีของ HTTP เหล่านี้
- RESTful API ให้ประสิทธิภาพสูงแก่ผู้ใช้ปลายทาง เมื่อผู้ใช้คลิกที่ลิงค์ใด ๆ เขาหรือเธอจะได้รับผลลัพธ์ทันที และผู้พัฒนาให้บริการทั้งหมดแก่ผู้ใช้
- คุณสมบัติอื่นของ RESTful API คือการปรับขนาดได้ RESTful API ให้บริการอย่างสม่ำเสมอแม้ว่าผู้ใช้จะเพิ่มขึ้นหรือลดลงก็ตาม
- RESTful API มีอินเทอร์เฟซที่เหมือนกัน ทรัพยากรทั้งหมดจะถูกระบุโดยใช้ URI ที่เกี่ยวข้อง ดังนั้นอินเทอร์เฟซแบบเดียวกันนี้ทำให้ RESTful API เป็นเรื่องง่าย
- คุณสมบัติต่อไปคือการปรับเปลี่ยนได้ การเปลี่ยนแปลงใดๆ ในระบบควรเกิดขึ้นอย่างง่ายดายและสะดวกสบาย
- สถาปัตยกรรม RESTful API นั้นพกพาสะดวกและเชื่อถือได้สูง
- ข้อจำกัดทางสถาปัตยกรรมประการแรกสำหรับ RESTful Web Service API คือควรใช้อินเทอร์เฟซที่เหมือนกัน ควรระบุทรัพยากร RESTful API ทั้งหมดโดยใช้ Uniform Resource Identifiers (URI) ตามลำดับ ต้องเข้าถึงและจัดการผ่านวิธี HTTP สี่วิธีเท่านั้น PUT, POST, GET และ DELETE
- ไคลเอนต์และเซิร์ฟเวอร์ใน RESTful API ควรมีการแสดงที่แม่นยำ ลูกค้าจัดการอินเทอร์เฟซที่เหมือนกันและรวบรวมคำขอ ในทางกลับกัน เซิร์ฟเวอร์ควบคุมความปลอดภัย การเข้าถึงข้อมูล และการจัดการเวิร์กโหลด เซิร์ฟเวอร์ถือทรัพยากรทั้งหมด และไคลเอนต์ร้องขอทรัพยากรจากเซิร์ฟเวอร์
- ข้อจำกัดทางสถาปัตยกรรมอีกประการสำหรับ RESTful Web Service API คือการดำเนินการที่ไม่ระบุสัญชาติ ไคลเอนต์และเซิร์ฟเวอร์ใน RESTful API ควรปฏิบัติตามฟังก์ชันไร้สัญชาติ การดำเนินการจัดการของรัฐทั้งหมดควรดำเนินการทางฝั่งไคลเอ็นต์
- API ของบริการเว็บ RESTful ทั้งหมดควรทำการแคช หากแสดงว่าไม่สามารถแคชได้ ก็ไม่ควรดำเนินการแคชเท่านั้น
- สถาปัตยกรรมของแอปพลิเคชันเฉพาะควรมีเซิร์ฟเวอร์หลายชั้น เลเยอร์เดียวไม่ควรมีข้อมูลใดๆ เกี่ยวกับเลเยอร์อื่นๆ ยกเว้นเลเยอร์ที่อยู่ทันที
- โดยทั่วไป เซิร์ฟเวอร์จะส่งการแทนค่าคงที่ของทรัพยากรไปยังไคลเอนต์ในรูปแบบ XML หรือ JSON นอกจากนี้ยังควรส่งรหัสปฏิบัติการไปยังไคลเอนต์เมื่อจำเป็น
- เมื่อใช้เมธอด HTTP GET กับเนื้อหา POST ที่ว่างเปล่า เราจะแสดงรายการที่มีชื่อผู้ใช้ ใช้ Uniform Resource Identifier เป็น /ผู้ใช้/บริการ/ผู้ใช้ .
- ต่อมาเราจะเพิ่มรายละเอียดของผู้ใช้ทุกคนในรายการ เพื่อจุดประสงค์นี้ เราจะใช้เมธอด HTTP POST โดยมีสตริง JSON ในเนื้อหา POST ใช้ URI เป็น /ผู้ใช้/บริการ/addUser .
- สุดท้ายนี้ เราจะแสดงรายละเอียดของผู้ใช้แยกกันโดยใช้วิธี HTTP GET ปล่อยให้เนื้อหา POST ว่างและใช้ URI เป็น /User/Service/getUser/:id .
- ประการแรก คุณต้องตัดสินใจเกี่ยวกับระบบปฏิบัติการ เช่น Windows หรือ Unix เพื่อติดตั้ง Jersey Framework หากคุณเลือกระบบ Windows ให้ดาวน์โหลดไฟล์ .zip และสำหรับระบบ Unix ให้ดาวน์โหลดไฟล์ .tz
- ขั้นตอนต่อไปคือการดาวน์โหลดไบนารี Jersey Framework ใหม่ล่าสุดจากด้านล่าง เว็บไซต์ .
- หลังจากดาวน์โหลดไฟล์ .zip บนระบบ Windows แล้ว คุณต้องเปิดเครื่องรูด สมมติว่าคุณดาวน์โหลดไฟล์ jaxrs-ri-2.17.zip หลังจากคลายซิปไฟล์นี้ จะมีโครงสร้างไดเร็กทอรีที่ตำแหน่ง E:jaxrs-ri-2.17jaxrs-ri
- ไลบรารี Jersey ทั้งหมดจะอยู่ในไดเร็กทอรี C:jaxrs-ri-2.17jaxrs-rilib และการพึ่งพาจะมีอยู่ที่ C:jaxrs-ri-2.17jaxrs-riext
- หลังจากนั้น แก้ไขตัวแปร CLASSPATH ในตำแหน่งที่มีไลบรารี Jersey ของคุณ ไดเรกทอรี C:jaxrs-ri-2.17jaxrs-rilib โปรดจำไว้ว่า ไม่จำเป็นต้องแก้ไขตัวแปร CLASSPATH สำหรับ Jersey Framework หากคุณใช้แอปพลิเคชัน Eclipse
- เริ่มแอปพลิเคชัน Eclipse จากระบบของคุณ คลิกที่ตัวเลือกไฟล์ คลิกที่ใหม่ และเลือกโครงการใหม่
- หลังจากนั้น เลือกตัวช่วยสร้าง Dynamic Web Project จากรายการตัวช่วยสร้าง
- หลังจากเลือกวิซาร์ดแล้ว ให้ตั้งชื่อที่ต้องการให้กับโปรเจ็กต์ของคุณ แล้วพูดว่า FirstRestตัวอย่าง .
- เมื่อคุณบันทึกชื่อโครงการของคุณในหน้าต่างวิซาร์ด ให้ไปที่ Project Explorer และคุณจะสังเกตเห็นชื่อโครงการของคุณที่นั่น
- jaxrs-ri-2.17jaxrs-riapi
- jaxrs-ri-2.17jaxrs-riext
- jaxrs-ri-2.17jaxrs-rilib
- บน Eclipse IDE ให้ไปที่ตัวเลือกไฟล์ คลิกที่ส่งออก -> เรา -> ไฟล์ War คุณต้องเลือกโครงการของคุณ FirstRestตัวอย่าง และโฟลเดอร์เป้าหมาย
- ต่อมา คุณต้องค้นหาไฟล์ FirstRestExample.war ในไฟล์ ไดเรกทอรีการติดตั้ง Tomcat ตัวเลือก ไดเรกทอรีเว็บแอพ . และเริ่มแอปพลิเคชัน Tomcat
- เมื่อคุณกำหนดทรัพยากรในบริการเว็บของคุณ ให้ใช้รูปพหูพจน์เสมอ ในตัวอย่างเว็บแอปพลิเคชัน RESTful ด้านบน เราได้สร้างทรัพยากร 'ผู้ใช้'
- คุณต้องตรวจสอบให้แน่ใจว่าชื่อทรัพยากรของคุณไม่ควรมีช่องว่างหรือสัญลักษณ์พิเศษ เช่น %, $, @ ฯลฯ คุณสามารถใช้ยัติภังค์ (-) หรือขีดล่าง (_) ในชื่อทรัพยากรได้ ตัวอย่างเช่น ชื่อทรัพยากรที่ถูกต้องคือ effective_employees และไม่ใช่ effective@employees
- ในบริการเว็บ RESTful URI จะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ แต่จะดีกว่าเสมอที่จะเก็บ URI เป็นตัวพิมพ์เล็ก
- ตรวจสอบให้แน่ใจว่าคุณใช้ HTTP Verbs หรือวิธีการใดๆ เพื่อดำเนินการกับทรัพยากร ในแอปพลิเคชัน RESTful ด้านบน เราใช้วิธี HTTP GET
- URI ควรเผยแพร่สู่สาธารณะ เนื่องจากบริการเว็บเป็นบริการสาธารณะ
- เมื่อใช้คุณสมบัติการไร้สัญชาติ เว็บเซอร์วิสจะประมวลผลคำขอแต่ละวิธีแยกกัน
- เซิร์ฟเวอร์ไม่มีสถานะของลูกค้าหรือการดำเนินการก่อนหน้า จึงทำให้การออกแบบแอพพลิเคชั่นง่ายขึ้น
- บริการเว็บ RESTful ดำเนินการเสมือนบนโปรโตคอล HTTP
- เนื่องจากเซิร์ฟเวอร์ไม่มีสถานะของไคลเอ็นต์ บริการเว็บจึงต้องการข้อมูลเพิ่มเติมจากทุกคำขอจากลูกค้า
API บริการเว็บ RESTful รองรับรูปแบบข้อมูลหลายรูปแบบ เช่น application/xml, application/json, application/x-www-form-urlencoded, application.x-web+xml และ multipart/form-data
คุณสมบัติและข้อจำกัดของสถาปัตยกรรม RESTful API
Dr. Roy Fielding เป็นผู้พัฒนา RESTful web service API ด้านล่างนี้คือคุณสมบัติและข้อจำกัดที่สำคัญของสถาปัตยกรรม RESTful API
คุณสมบัติของ RESTful API
ข้อจำกัดทางสถาปัตยกรรมของ RESTful API
สำหรับ RESTful Web Service API ใดๆ ต้องมีเงื่อนไขทางสถาปัตยกรรม 6 ประการด้านล่าง
ในส่วนต่อไป เราจะเรียนรู้วิธีสร้างบริการเว็บโดยใช้วิธี HTTP เราจะใช้วิธี HTTP สองวิธีคือ GET และ POST สำหรับการสร้างการจัดการผู้ใช้ ต่อไปนี้คือฟังก์ชันที่จำเป็นบางอย่างที่ใช้:
การตั้งค่าสภาพแวดล้อมสำหรับ RESTful Web Services
สำหรับการทำงานกับบริการเว็บ RESTful เราจะใช้ Jersey Framework . เฟรมเวิร์กนี้ใช้ข้อกำหนดมาตรฐานที่เรียกว่า JAX-RS 2.0 API เมื่อใช้ข้อกำหนดนี้ เราสามารถสร้างบริการเว็บ RESTful ได้ ก่อนที่เราจะไปยัง Jersey Framework เราจะเรียนรู้การตั้งค่าสภาพแวดล้อม Eclipse, Tomcat และ JDK ในระบบคอมพิวเตอร์ของคุณ เราได้อธิบายการตั้งค่าสภาพแวดล้อมทั้งสามบนระบบด้วยขั้นตอนที่ถูกต้องและตรงไปตรงมา
จะตั้งค่า Java Development Kit (JDK) ได้อย่างไร?
ดิ ชุดพัฒนา Java (JDK) เป็นหนึ่งในแพ็คเกจสำคัญที่ใช้สำหรับการรันโค้ด Java แพ็คเกจ JDK ใน Java ช่วยให้ผู้ใช้สามารถเขียนโปรแกรม Java ได้ คุณต้องดาวน์โหลดแพ็คเกจนี้ ชื่อ JavaSE จาก this เว็บไซต์ :
หลังจากดาวน์โหลดแล้ว ให้ติดตั้งโดยใช้คำแนะนำที่ให้ไว้ เมื่อเสร็จแล้ว คุณต้องแก้ไขตัวแปรสภาพแวดล้อม PATH และ JAVA_HOME ในตำแหน่งที่มี 'java' และ 'javac' โดยทั่วไป 'java' มีอยู่ใน java_install_dir/bin และ 'javac' มีอยู่ใน 'java_install_dir'
สำหรับการแก้ไขตัวแปรสภาพแวดล้อม PATH และ JAVA_HOME บนระบบ Windows XP, NT หรือ 2000 ให้ไปที่ 'My Computer คลิกขวาบนมัน และคลิกที่ 'Properties' คุณจะสังเกตเห็น 'แท็บขั้นสูง' คลิกที่มัน และต่อมาคลิกที่ 'ตัวแปรสภาพแวดล้อม' เปลี่ยนตัวแปรสภาพแวดล้อม PATH และ JAVA_HOME ด้วยตำแหน่ง 'java' และ 'javac' ในระบบ และคลิกที่ปุ่ม 'ตกลง' การตั้งค่าตัวแปรสภาพแวดล้อมของคุณเสร็จสิ้น
สำหรับระบบ Linux และ Solaris ให้ทำตามขั้นตอนด้านล่าง พิจารณาว่าคุณใช้ C เชลล์ และคุณได้ดาวน์โหลดไฟล์ JavaSE ในตำแหน่ง /usr/local/jdk1.7.9_75 อัปเดตไฟล์ '.cshrc' ด้วยคำสั่งด้านล่าง:
|_+_|วิธีการตั้งค่า Eclipse IDE
สิ่งแรกที่คุณต้องติดตามคือดาวน์โหลดไบนารีล่าสุดของ Eclipse จากทางการ เว็บไซต์ .
หลังจากดาวน์โหลดไบนารี Eclipse ใหม่ล่าสุด ให้วางไว้ในตำแหน่งที่เหมาะสมบนระบบของคุณ พิจารณาว่าเราพบไบนารี Eclipse บนระบบ Windows ใน C:eclipse เราจะค้นหาตำแหน่งไบนารี Eclipse ที่ตำแหน่ง /usr/local/eclipse สำหรับระบบ Linux หรือ Unix หลังจากที่คุณวางไว้ในตำแหน่งที่ถูกต้อง ให้แก้ไขตัวแปร PATH ในตำแหน่งที่คุณเก็บไบนารี Eclipse
สำหรับการเริ่มต้น Eclipse ให้ดับเบิลคลิกที่ไฟล์ eclipse.exe หรือคุณสามารถพิมพ์คำสั่งด้านล่างบนพรอมต์คำสั่งของ Windows
|_+_|หากคุณใช้ Eclipse บนระบบ Linux หรือ Solaris ให้ใช้คำสั่งด้านล่างเพื่อเริ่มต้น
|_+_|หากทุกอย่างเป็นไปด้วยดีและการตั้งค่าถูกต้อง แอปพลิเคชันจะเริ่มทำงาน และหน้าจอจะปรากฏขึ้นเพื่อเขียนโค้ด
วิธีการตั้งค่า Apache Tomcat
ที่นี่ เราจะเข้าใจวิธีการติดตั้งและตั้งค่าสภาพแวดล้อมระบบของคุณสำหรับ Apache Tomcat ประการแรก คุณต้องดาวน์โหลด Tomcat เวอร์ชันล่าสุดบนนี้ เว็บไซต์ .
หลังจากดาวน์โหลด Tomcat เวอร์ชันล่าสุดนี้แล้ว ให้วางไว้ในตำแหน่งที่เหมาะสมบนระบบของคุณ
ให้เราพิจารณาว่าเราวางไฟล์ Tomcat Apache ไว้บนระบบ Windows ที่ตำแหน่ง C:apache-tomcat-7.0.59 เราจะวางไฟล์ Tomcat Apache ไว้ที่ตำแหน่ง /usr/local/apache-tomcat-7.0.59 บน ลินุกซ์ หรือระบบโซลาริส หลังจากนั้น คุณต้องแก้ไขตัวแปรสภาพแวดล้อม CATALINA_HOME ในตำแหน่งที่คุณเก็บไฟล์ Tomcat Apache ที่ดาวน์โหลดไว้
คุณสามารถเริ่มแอปพลิเคชัน Tomcat บนระบบ Windows ของคุณได้โดยคลิกที่ไฟล์ startup.bat คุณยังสามารถใช้คำสั่งต่อไปนี้เพื่อเริ่มแอปพลิเคชัน Tomcat
|_+_|หรือ
|_+_|หากคุณกำลังใช้แอปพลิเคชัน Tomcat บนระบบ Linux หรือ Solaris คุณต้องปฏิบัติตามคำสั่งใดคำสั่งหนึ่งด้านล่างเพื่อเริ่มต้น
|_+_|หรือ
|_+_|เมื่อทุกอย่างเรียบร้อย หน้าจอจะปรากฏขึ้นเพื่อให้คุณเขียนโค้ดและเรียกใช้ได้ แอปพลิเคชันเริ่มต้นทั้งหมดที่มี Tomcat จะพร้อมใช้งานโดยไปที่ด้านล่าง เว็บไซต์ :
ข้อมูลทั้งหมดเกี่ยวกับการกำหนดค่า Tomcat และการรันโปรแกรมที่มีอยู่บน เว็บไซต์ .
หากคุณต้องการหยุดแอปพลิเคชัน Tomcat บนระบบ Windows ให้พิมพ์คำสั่งใดคำสั่งหนึ่งต่อไปนี้
|_+_|หรือ
|_+_|คุณสามารถพิมพ์คำสั่งใดคำสั่งหนึ่งจากสองคำสั่งที่กล่าวถึงด้านล่างเพื่อปิดแอปพลิเคชัน Tomcat
|_+_|หรือ
|_+_|จะตั้งค่าไลบรารี Jersey Framework ได้อย่างไร
หลังจากตั้งค่า JDK, Eclipse และ Tomcat Apache แล้ว ตอนนี้คุณสามารถตั้งค่า Jersey Framework ได้แล้ว ปฏิบัติตามแนวทางด้านล่างตามลำดับเพื่อดาวน์โหลด Jersey Framework
ตอนนี้คุณรู้วิธีตั้งค่าสภาพแวดล้อมสำหรับบริการเว็บ RESTful แล้ว ทำตามขั้นตอนข้างต้นทั้งหมด แล้วคุณจะพร้อมที่จะเขียนตัวอย่าง Jersey
ตัวอย่างแรก RESTful – Jersey (JAX-RS)
หลังจากตั้งค่าสภาพแวดล้อม Java, Tomcat Apache, Eclipse และ Jersey Framework แล้ว คุณสามารถเริ่มสร้างเว็บแอปพลิเคชันโดยใช้ RESTful API ให้เราสังเกตตัวอย่างหนึ่งใน Jersey Framework เพื่อทำความเข้าใจเกี่ยวกับการเขียนโปรแกรมใน RESTful API คุณต้องทำตามขั้นตอนด้านล่างที่กล่าวถึงตามลำดับเพื่อเรียกใช้โปรแกรมได้สำเร็จ
ขั้นตอนที่ 1: สร้าง Java Project
สร้างโปรเจ็กต์ Java โดยใช้ Eclipse IDE ที่นี่ เราจะสร้างไดนามิกเว็บโปรเจ็กต์ ด้านล่างนี้เป็นขั้นตอนในการ พัฒนาไดนามิกเว็บ โครงการใน Eclipse IDE
ขั้นตอนที่ 2: เพิ่มไลบรารีที่จำเป็น
หลังจากสร้างโปรเจ็กต์และบันทึกด้วยชื่อเฉพาะ คุณต้องเพิ่มไลบรารีและการอ้างอิงของ Jersey Framewoek ลงในโปรเจ็กต์ของคุณ เราได้ระบุชื่อไฟล์ jar ที่จะคัดลอกในไดเร็กทอรี WEB-INF/lib ของโครงการที่สร้างขึ้นจากโฟลเดอร์ zip ของ jersey
สำหรับการเพิ่มไฟล์ jar ข้างต้นที่กล่าวถึงในโครงการของคุณ ให้คลิกขวาที่โครงการของคุณ FirstRestตัวอย่าง . คลิกที่ตัวเลือก Build Path จากนั้นไปที่ Configure Build Path ที่นี่ คุณจะเห็นหน้าต่างแสดง Java Build Path นอกจากนี้ คุณจะเห็นปุ่มเพิ่ม JAR ใต้เมนูไลบรารี เพิ่มไฟล์ jar ในไดเร็กทอรี WEB-INF/lib
ขั้นตอนที่ 3: สร้างไฟล์ต้นฉบับ
เราได้สร้างโครงการของเรา ชื่อ FirstRestExample ใน Eclipse IDE ตอนนี้ เราต้องสร้างไฟล์ต้นฉบับสำหรับโครงการนี้ ในการสร้างไฟล์ต้นฉบับ ขั้นแรกเราต้องสร้างแพ็คเกจ พูด com.restexample ไปที่ package explorer และคลิกขวาที่ตัวเลือก src คุณจะพบตัวเลือกใหม่ คลิกที่มันและคลิกที่ตัวเลือกแพ็คเกจในภายหลัง
ที่นี่คุณต้องสร้างไฟล์ที่แตกต่างกันสามไฟล์ภายใต้แพ็คเกจ com.restexample ให้เราตั้งชื่อไฟล์เป็น EmployeeService.java, Employee.java และ EmployeeDao.java ในสามไฟล์ คุณสร้างภายใต้แพ็คเกจ com.restexmaple และคุณจำเป็นต้องเขียนโค้ด ก่อนอื่นเราจะเขียนโค้ดลงในไฟล์ Employee.java
Employee.java
|_+_|พนักงานDao.java
|_+_|พนักงานService.java
|_+_|ในไฟล์ EmployeeService.java ด้านบน คุณต้องจำไว้ว่าเราใช้คำอธิบายประกอบ @Path เพื่อระบุพาธสำหรับบริการเว็บ นอกจากนี้ เรายังได้สร้างเส้นทางสำหรับวิธีการบริการเว็บเฉพาะโดยใช้คำอธิบายประกอบ @Path
ขั้นตอนที่ 4: สร้างไฟล์ Web.xml
สุดท้ายเราต้องสร้างไฟล์ Web.xml วัตถุประสงค์หลักของไฟล์ Web.xml คือการกำหนดเซิร์ฟเล็ต Jersey Framework สำหรับแอปพลิเคชันที่กำลังพัฒนา
web.xml
|_+_|ขั้นตอนที่ 5: คอมไพล์และเรียกใช้โปรแกรม
หลังจากเขียนไฟล์ทั้งสี่ข้างต้นแล้ว คุณก็พร้อมที่จะคอมไพล์โฆษณาที่รันโปรแกรม เราใช้ Eclipse IDE เพื่อเขียนโปรแกรมข้างต้นทั้งหมด ดังนั้นเราจึงจำเป็นต้องส่งออกแอปพลิเคชันข้างต้นในไฟล์ war ต่อมา เราต้องคอมไพล์และรันไฟล์ war นี้ในเครื่องมือ Tomcat Apache
เราจะแสดงวิธีสร้างไฟล์ war ใน Eclipse IDE ด้านล่าง
หลังจากวางไฟล์ war ในไดเร็กทอรี webapps ของ Tomcat แล้ว คุณสามารถเรียกใช้แอปพลิเคชันของคุณได้ เราจะใช้ส่วนขยายของ Chrome บุรุษไปรษณีย์ เพื่อทดสอบการใช้งานของเรา ขั้นตอนต่อไปคือการวางพนักงานทั้งหมดไว้ใน POSTMAN เพื่อจุดประสงค์นี้ ให้ใช้โค้ดด้านล่างของโค้ด
|_+_|สำหรับการใช้บรรทัดโค้ดด้านบนใน Tomcat Apache ให้ใช้วิธี HTTP GET นี่คือแอปพลิเคชันบริการเว็บแรกของคุณที่พร้อมใช้งาน
ข้อความใน RESTful Web Service API
ใน RESTful API ไคลเอนต์และเซิร์ฟเวอร์สื่อสารกันโดยใช้โปรโตคอล HTTP การสื่อสารเกิดขึ้นเมื่อไคลเอ็นต์ส่งคำขอ HTTP ไปยังเซิร์ฟเวอร์ และเซิร์ฟเวอร์ตอบกลับไปยังไคลเอ็นต์ด้วย HTTP Response การสื่อสารระหว่างไคลเอนต์และเซิร์ฟเวอร์โดยใช้โปรโตคอล HTTP เรียกว่าการส่งข้อความ ข้อความ HTTP เดียวมีข้อมูลข้อความและข้อมูลเมตา ข้อมูลเมตาเป็นข้อมูลข้อความ
ตอนนี้ ให้เราดูคำขอ HTTP และการตอบสนอง HTTP ใน API บริการเว็บ RESTful
คำขอ HTTP
ไคลเอนต์ส่งคำขอ HTTP ไปยังเซิร์ฟเวอร์ มันร้องขอทรัพยากรจากเซิร์ฟเวอร์ มีห้าส่วนหลักที่รวมอยู่ในคำขอ HTTP, กริยา, URI, เวอร์ชัน HTTP, ส่วนหัวของคำขอ และเนื้อหาคำขอ ต่อไปนี้เป็นรูปแบบคำขอ HTTP

ให้เราอธิบายแต่ละส่วนของคำขอ HTTP โดยสังเขป
การตอบสนอง HTTP
เมื่อเซิร์ฟเวอร์ได้รับคำขอ HTTP จากไคลเอ็นต์ เซิร์ฟเวอร์จะตอบกลับไคลเอ็นต์ด้วย HTTP Response การตอบสนอง HTTP เกี่ยวข้องกับสี่ส่วนที่สำคัญ, รหัสตอบกลับ, เวอร์ชัน HTTP, ส่วนหัวของการตอบสนอง และเนื้อหาการตอบกลับ ด้านล่างนี้คือรูปแบบการตอบสนอง HTTP

ให้เราพูดถึงแต่ละส่วนการตอบกลับ HTTP ที่นี่
รหัสตอบกลับยังเรียกว่าสถานะ เมื่อไคลเอนต์ร้องขอทรัพยากรจากเซิร์ฟเวอร์ รหัสตอบกลับจะแสดงสถานะ หากสถานะเป็น 404 ไม่พบทรัพยากร หากการตอบสนองโอเค สถานะคือ 200
ส่วนที่สองของการตอบสนอง HTTP เป็นเวอร์ชัน HTTP ตัวอย่างเช่น HTTP v1.1 โดยที่ v1.1 เป็นเวอร์ชัน
ส่วนหัวมีข้อมูลเมตาของข้อความตอบกลับ HTTP ในรูปแบบของคู่คีย์-ค่า อาจมีข้อมูลเช่นประเภทเซิร์ฟเวอร์ ความยาวเนื้อหา ข้อมูลการตอบสนอง ฯลฯ
เนื้อหาการตอบสนองรวมถึงการเป็นตัวแทนของทรัพยากร
ในตัวอย่างข้างต้นของ RESTful web service API เราได้ใส่ http://localhost:8080/FirstRestExample/rest/EmployeeService/employees .
ใน POSTMAN โดยใช้เมธอด HTTP GET เมื่อคำขอถูกส่งโดยใช้วิธี GET เราจะได้รับข้อความ XML ดังนี้ สำหรับการดูการตอบสนอง XML คุณต้องคลิกที่ปุ่มแสดงตัวอย่าง
|_+_|ทรัพยากรใน RESTful Web Service API
ใน RESTful Web Service API เนื้อหาทั้งหมดถือเป็นทรัพยากร ลูกค้าร้องขอทรัพยากรและเซิร์ฟเวอร์ให้การเข้าถึงทรัพยากรเฉพาะที่ลูกค้าร้องขอ หลังจากให้สิทธิ์เข้าถึงแล้ว ลูกค้าสามารถแก้ไขหรือเปลี่ยนทรัพยากรได้ ทรัพยากรอาจเป็นหน้า HTML, รูปภาพ, ไฟล์ข้อความ หรือข้อมูลธุรกิจ
มีหมายเลขเฉพาะสำหรับแต่ละทรัพยากรในสถาปัตยกรรม REST หมายเลขเฉพาะนี้เรียกว่า Uniform Resource Identifier (URI) โดยทั่วไป ทรัพยากรในสถาปัตยกรรม REST จะแสดงโดยใช้รูปแบบ XML หรือ JSON ให้เราดูการนำเสนอของทรัพยากรในสถาปัตยกรรม REST
การเป็นตัวแทนทรัพยากรในสถาปัตยกรรม REST
ทรัพยากรในสถาปัตยกรรม REST แสดงในรูปแบบ XML หรือ JSON คุณสามารถปฏิบัติต่อทรัพยากร REST เป็นเอนทิตีในฐานข้อมูลหรือเป็นวัตถุในการเขียนโปรแกรมเชิงวัตถุ ประการแรก ทรัพยากรถูกระบุโดยใช้ Uniform Resource Identifier (URI) ต่อมา กำหนดรูปแบบมาตรฐานสำหรับการแสดงทรัพยากร เมื่อไคลเอนต์ร้องขอทรัพยากร เซิร์ฟเวอร์จะส่งต่อทรัพยากรในรูปแบบที่ไคลเอนต์ระบุ
ในตัวอย่าง RESTful ด้านบน เรามี 'พนักงาน' เป็นทรัพยากร ให้เราดูว่าทรัพยากร 'พนักงาน' ถูกแสดงโดยใช้แบบฟอร์ม XML อย่างไร
|_+_|ตอนนี้ เราจะอธิบายทรัพยากร 'พนักงาน' เดียวกันในรูปแบบ JSON
|_+_|ในสถาปัตยกรรม REST คุณสามารถแสดงทรัพยากรในรูปแบบใดก็ได้ มีหลายกรณีใน RESTful Web Service API ที่ไคลเอนต์หนึ่งร้องขอทรัพยากรในรูปแบบ XML ในขณะที่ไคลเอนต์อื่นร้องขอทรัพยากรเดียวกันในแบบฟอร์ม JSON สิ่งสำคัญเพียงอย่างเดียวในการแสดงทรัพยากรคือควรแสดงในรูปแบบที่ลูกค้าสามารถเข้าใจได้
เมื่อทรัพยากรแสดงในรูปแบบใด ๆ มีข้อกำหนดเบื้องต้นบางประการที่ต้องพิจารณา รูปแบบทรัพยากรควรเข้าใจได้ สมบูรณ์ และเชื่อมโยงได้ ไคลเอนต์และเซิร์ฟเวอร์ในสถาปัตยกรรม REST ควรรับทราบรูปแบบการแสดงทรัพยากรอย่างรวดเร็ว แบบฟอร์มที่คุณเลือกเพื่อเป็นตัวแทนของทรัพยากร ควรให้ข้อมูลทรัพยากรที่สมบูรณ์ รูปแบบการแสดงทรัพยากรควรอนุญาตให้มีลิงก์ไปยังทรัพยากรอื่นๆ
นักพัฒนาส่วนใหญ่ใช้รูปแบบ JSON หรือ XML เพื่อแสดงทรัพยากรในสถาปัตยกรรม REST ปัจจุบันมีเครื่องมือมากมายในการแก้ไขข้อมูล JSON หรือ XML
การระบุที่อยู่ใน RESTful Web Service API
การระบุที่อยู่ในสถาปัตยกรรม REST หมายถึงการระบุตำแหน่งทรัพยากรที่มีอยู่บนเซิร์ฟเวอร์ เรารู้ว่าทรัพยากรถูกระบุโดย Uniform Resource Identifiers (URI) รูปแบบของ Uniform Resource Identifier มีดังนี้:
////
URI ค้นหาทรัพยากรเฉพาะบนเซิร์ฟเวอร์ ในตัวอย่างข้างต้นของเรา URI คือ
|_+_|เราใช้วิธี HTTP GET สำหรับ URI ข้างต้น
คุณอาจสงสัยว่า URI ถูกสร้างขึ้นอย่างไร เราจะแนะนำคุณเกี่ยวกับกฎที่ตรงไปตรงมาในการสร้าง URI สำหรับทรัพยากรใดๆ ในสถาปัตยกรรม REST
ให้เราดูตัวอย่างของ URI ที่ดีและไม่ดีสำหรับการดึงข้อมูลพนักงาน
URI แย่
|_+_|URI ที่ดี
|_+_|Java (JAX-RS) ใน RESTful Web Service API
JAX-RS หมายถึง Jakarta RESTful Web Services ก่อนหน้านี้รู้จักกันในชื่อ Java API สำหรับ RESTful Web Services JAX-RS คือ API ที่ใช้ Java ซึ่งช่วยให้ผู้ใช้สามารถสร้างบริการเว็บตามสถาปัตยกรรม REST JAX-RS เวอร์ชันล่าสุดคือ 2.0 ซึ่งเปิดตัวในปี 2013 API ที่ใช้จาวานี้ใช้คำอธิบายประกอบจาก Java SE 5 ทำให้การพัฒนาและการปรับใช้เว็บเซอร์วิสสามารถจัดการได้ง่ายขึ้น
ข้อมูลจำเพาะ JAX-RS
ต่อไปนี้คือคำอธิบายประกอบที่ใช้โดยทั่วไปสำหรับการแมปทรัพยากรเป็นทรัพยากรบริการเว็บ
การไร้สัญชาติและการแคช RESTful Web Service API
ไร้สัญชาติ
การไร้สัญชาติหมายถึงสถานะไคลเอ็นต์ไม่ควรปรากฏบนเซิร์ฟเวอร์ ไคลเอนต์ส่งบริบทไปยังเซิร์ฟเวอร์ เมื่อได้รับบริบทจากลูกค้า เซิร์ฟเวอร์จะจัดเก็บบริบทและใช้สำหรับคำขอของลูกค้าต่อไป ตัวอย่างเช่น ไคลเอนต์ส่งตัวระบุเซสชันไปยังเซิร์ฟเวอร์ ดังนั้นเซิร์ฟเวอร์จะเก็บไว้เพื่อระบุเซสชัน
ข้อดี:
ด้านล่างนี้คือข้อดีที่สำคัญบางประการของการไร้สัญชาติใน RESTful Web Service API
จุดด้อย:
เก็บเอาไว้
ลูกค้าถือทรัพยากรบางส่วนจากเซิร์ฟเวอร์ในแง่ของการตอบสนอง ดังนั้น ไคลเอนต์ไม่จำเป็นต้องร้องขอเซิร์ฟเวอร์ซ้ำสำหรับทรัพยากรเดียวกัน สิ่งนี้เรียกว่าการแคช ตามข้อมูลการแคชของทรัพยากรเฉพาะที่เซิร์ฟเวอร์เสนอให้ ไคลเอ็นต์ตัดสินใจว่าจะแคชทรัพยากรในช่วงเวลาที่กำหนดหรือไม่แคช
มีส่วนหัวของการควบคุมแคชที่ประกอบด้วยส่วนสำคัญห้าส่วน ได้แก่ สาธารณะ ส่วนตัว อายุสูงสุด ไม่มีแคช/ไม่มีการจัดเก็บ และต้องตรวจสอบอีกครั้ง ให้เราดูคำอธิบายของแต่ละส่วนด้านล่าง
สำหรับการกำหนดค่าแคชของไคลเอ็นต์ การตอบสนองของเซิร์ฟเวอร์เกี่ยวข้องกับส่วนหัวต่อไปนี้:
เมธอด HTTP และการทำงานใน RESTful API
ในส่วนก่อนหน้านี้ เราได้เห็นวิธี HTTP และการใช้งานแล้ว เซ็กเมนต์นี้ต้องสังเกตเมธอด HTTPS การดำเนินการ และประเภทการดำเนินการในสถาปัตยกรรม REST
เมธอด GET HTTP ในตัวอย่างแอปพลิเคชัน RESTful ด้านบนใช้สำหรับรับรายชื่อพนักงาน เราใช้ URI สำหรับวิธี GET ดังนี้:
|_+_|วิธี HTTP GET รับรายชื่อพนักงาน ดังนั้นจึงมีประเภทการดำเนินการแบบอ่านอย่างเดียว
เรายังสามารถใช้เมธอด GET เพื่อดึงข้อมูลพนักงาน Id 1 ได้อีกด้วย URI สำหรับการดึงข้อมูลพนักงาน Id 1 คือ
|_+_|การดำเนินการนี้เป็นแบบอ่านอย่างเดียวเช่นกัน
ในตัวอย่างแอปพลิเคชัน RESTful ของเรา เราได้ใช้วิธี HTTP POST เพื่อแทรกพนักงานที่มี Id 2 URI สำหรับการแทรกพนักงานสำหรับ Id 2 คือ
|_+_|ประเภทการดำเนินการข้างต้นเป็นแบบ non-idempotent
เราสามารถใช้วิธี HTTP DELETE เพื่อลบพนักงานที่มี Id 1 ด้านล่างนี้คือ URI สำหรับการลบพนักงานที่มี Id 1
|_+_|การดำเนินการ DELETE เป็นประเภท idempotent
เมธอด HEAD ในสถาปัตยกรรม REST ใช้สำหรับส่งคืนส่วนหัว HTTP ไม่มีเนื้อหา HTTP สำหรับตัวอย่างพนักงานด้านบนของเรา เราสามารถใช้ URI ด้านล่างได้
|_+_|การดำเนินการนี้เป็นแบบอ่านอย่างเดียว
ในแอปพลิเคชัน REST Employee ด้านบน เราสามารถใช้เมธอด HTTP PUT เพื่ออัปเดตพนักงานด้วย Id 2 ใช้ URI ด้านล่างเพื่ออัปเดตพนักงานด้วย Id 2
|_+_|วิธี HTTP OPTIONS ช่วยให้คุณสามารถแสดงรายการการดำเนินการทั้งหมดที่สนับสนุนในบริการเว็บ คุณสามารถใช้ URI ต่อไปนี้สำหรับการดำเนินการนี้
|_+_|การดำเนินการ OPTIONS เป็นแบบอ่านอย่างเดียว
จากวิธีการและการทำงานของ HTTP ข้างต้น เราสามารถสรุปได้ว่าการดำเนินการ GET เป็นประเภทอ่านอย่างเดียว การดำเนินการ DELETE และ PUT เป็นประเภท idempotent ผลลัพธ์ของการดำเนินการทั้งสองนี้ยังคงเหมือนเดิม แม้ว่าจะดำเนินการหลายครั้งก็ตาม
บทสรุป
RESTful API คือ API ที่ใช้สถาปัตยกรรม REST ซึ่งใช้วิธี HTTP เพื่อเข้าถึงและจัดระเบียบข้อมูล ทุกข้อมูลในสถาปัตยกรรม REST ถือเป็นทรัพยากร หากคุณต้องการเรียนรู้ RESTful API โพสต์นี้เป็นคำแนะนำฉบับสมบูรณ์สำหรับคุณ
เราได้เห็นแล้วว่า API ของบริการเว็บ RESTful คืออะไร มันทำงานอย่างไร วิธี HTTP ที่ใช้ในสถาปัตยกรรม REST และคุณสมบัติ & ข้อจำกัดของสถาปัตยกรรม REST ต่อมา เราได้อธิบายการตั้งค่าสภาพแวดล้อมสำหรับ RESTful API ในการตั้งค่าสภาพแวดล้อม RESTful API เราได้ตั้งค่าสภาพแวดล้อม JDK, Tomcat Apache, Eclipse IDE และ Jersey Framework คุณสามารถสังเกตตัวอย่างการใช้งาน RESTful อย่างง่ายได้ในบทช่วยสอนนี้
ต่อไป เราได้กล่าวถึงองค์ประกอบหลายอย่างใน RESTful Web Service API เช่น ข้อความ การไร้สัญชาติ การแคช ทรัพยากร และการกำหนดที่อยู่ เราได้พูดคุยกันเรื่อง Java JAX-RS และข้อมูลจำเพาะ สุดท้ายนี้ เราได้เห็นเมธอด HTTP และการดำเนินการกับ URI และประเภทการดำเนินการแล้ว