Гарчиг[Нуух][Үзүүлэх]
- 1. REST гэж юуг ойлгож байна вэ?
- 2. REST API гэж юу гэсэн үг вэ?
- 3. URI гэж яг юу вэ?
- 4. RESTful Web Services ямар онцлогтой вэ?
- 5. REST-ийн үндсэн зарчмууд юу вэ?
- 6. REST дэмждэг HTTP аргуудыг дурд.
- 7. Тогтвортой интерфэйсийн тавьсан хязгаарлалтыг тайлбарла.
- 8. REST Resource гэж яг юу вэ?
- 9. JAX-RS таны хувьд юу гэсэн үг вэ?
- 10. AJAX болон REST хоёр нь юугаараа ялгаатай вэ?
- 11. Та RESTful вэб үйлчилгээний сул талуудыг жагсааж чадах уу?
- 12. PUT болон POST техникүүд нь юугаараа ялгаатай вэ?
- 13. Та RESTful вэб үйлчилгээг хэрхэн туршиж үздэг вэ?
- 14. Бодит ертөнцөд REST API-г тайлбарла.
- 15. Microservice Architecture хэрхэн ажилладаг вэ?
- 16. Кэш гэж яг юу вэ?
- 17. Ачаалах ачааллыг тодорхойлно уу.
- 18. САВАН ба АМРАЛТ хоёрыг ялгах уу?
- 19. Тээврийн түвшний хамгаалалтын протоколыг (TLS) REST-тэй ашиглаж болох уу?
- 20. Идемпотентын аргууд: тэдгээр нь юу вэ? Энэ нь RESTful вэб үйлчилгээний ертөнцөд хэрхэн хамаатай вэ?
- 21. HTTP үндсэн баталгаажуулалтын функц нь юу вэ?
- 22. Та GraphQL нь микро үйлчилгээний архитектурыг бий болгоход хамгийн сайн сонголт гэж бодож байна уу?
- 23. Аюулгүй ба idempotent HTTP аргуудын үндсэн ялгаа нь юу вэ?
- 24. RESTful Root Resource Classes JAX-RS API нь юуг илэрхийлдэг вэ?
- 25. Postman гэж яг юу вэ, яагаад үүнийг ашигладаг вэ?
- 26. REST API-г хэрхэн аюулгүй байлгадаг вэ?
- Дүгнэлт
REST-ийн хувьсал нь API-г гайхалтай хүртээмжтэй болгож, мөн тэдний хүч чадал, чадавхийг бүрэн харуулсан. REST API нь нөөцөд чиглэсэн архитектурын улмаас үүсгэх, кэш хийхэд хялбар байдаг.
Нэмж дурдахад, цаг хугацааны туршид RESTful API-ууд нь үүлэн тооцоолол, микро үйлчилгээнд суурилсан дизайн зэрэг бусад чухал бүтээн байгуулалтын анхдагч нь байсан.
Тиймээс RESTful үйлчилгээг ашигладаг бизнесүүдэд өрсөлдөхүйц давуу талыг бий болгодог тул REST API хөгжүүлэгчид өнөөдөр эрэлт хэрэгцээтэй байгаа нь гайхах зүйл биш юм. REST API нь дизайны түгээмэл чиг хандлага юм.
Олон мэдээллийн технологийн компаниуд REST API-ийн мэдлэгийг хүсдэг програм хангамж хөгжүүлэгчид мөн техникийн ярилцлагад энэ талаар асуу.
Хэрэв та REST API хөгжүүлэлтийн чиглэлээр ажиллахыг хүсвэл янз бүрийн пүүсүүдэд ярилцлага өгөхөд бэлэн байхад тань туслах хамгийн энгийн REST API ярилцлагын асуултуудын заримыг энд оруулав.
1. REST гэж юуг ойлгож байна вэ?
REST нь Hypertext Transfer Protocol (HTTP) дээр суурилсан вэб программуудыг зохион бүтээх архитектурын загвар юм.
REST нь вэб үйлчилгээг RESTful гэж үзэхийн тулд хангасан байх ёстой тодорхой стандартуудыг тодорхойлдог. Эдгээр зөвлөмжүүд нь стандартчилсан HTTP протоколуудыг ашиглан үйлчлүүлэгч болон серверийн хооронд хүсэлт, нөөцийг хурдан бөгөөд үр дүнтэй дамжуулах баталгаа болдог.
2. REST API гэж юу гэсэн үг вэ?
Хэрэглээний програмчлалын интерфейс гэж нэрлэгддэг программ хангамжаас програм хангамжийн холбоос нь бие даасан программуудын хооронд мэдээлэл солилцох, харилцаа холбоо тогтоох боломжийг олгодог. Жишээлбэл, мэдээллийн вэбсайт нь Twitter API ашиглан холбогдох жиргээг автоматаар олж мэдээд нэгтгэх боломжтой.
REST зарчмуудыг баримталдаг API-г REST API, заримдаа RESTful API гэж нэрлэдэг. REST API-д өгөгдлийн хэсэг бүрийг эх сурвалж болгон зохицуулж, өөр өөр стандарт нөөцийн таних тэмдэг (URI) өгдөг.
Жишээ нь, Twitter API нь жиргээ бүрийг үйлчлүүлэгчдэд ашиглах боломжтой эх сурвалж болгодог. Twitter API-г хэрэглэгчид жиргээ нийтлэх, вэб сайтын бусад ажлыг гүйцэтгэхэд ашиглаж болно.
3. URI гэж яг юу вэ?
A компьютерийн сүлжээ нөөцийг URI эсвэл нэг төрлийн нөөцийн танигч ашиглан нэрлэж болно. Энэ нь нэг нөөцийг нөгөөгөөс нь салгах хэрэгсэл болдог. Эх сурвалжууд нь онлайн байж болно, үгүй ч байж болно.
Стандарт бүтэцтэй учраас URI нь янз бүрийн төрлийн нөөцтэй холбогдоход хялбар болгодог. Нөөцийн байршил эсвэл нэрийг URI-д тэмдэгтүүдийн хамт оруулсан болно.
URI нь зам, схем, асуулга болон бусад элементүүдээс бүрдэх боловч протоколыг агуулдаггүй.
Протоколыг ашиглан URL-уудыг (Нэгдмэл нөөцийн байршлыг тогтоогч) интернетээс эсвэл түүгээр дамжуулан ашиглах боломжтой эх сурвалжуудыг олоход ашигладаг.
4. RESTful Web Services ямар онцлогтой вэ?
- Үйлчлүүлэгч-Сервер парадигм нь үйлчилгээний үндэс суурь юм.
- Үйлчилгээ нь URI ашиглан эх сурвалжид хандах боломжтой.
- Энэхүү үйлчилгээ нь өгөгдөл/нөөц олж авах, асуулга явуулах болон бусад ажлуудыг хийхэд HTTP протоколыг ашигладаг.
- Мессеж гэдэг нь үйлчлүүлэгч болон серверийн хооронд харилцах аргын нэр юм.
- Эдгээр үйлчилгээнүүд нь SOAP үйлчилгээг ашиглан REST архитектурын загварыг хэрэгжүүлэх боломжтой.
- Ижил төрлийн давтагдах хүсэлтүүдийн серверийн дуудлагыг багасгахын тулд эдгээр үйлчилгээнүүд кэш хийх санааг ашигладаг.
5. REST-ийн үндсэн зарчмууд юу вэ?
REST API нь таван шалгуурыг хангасан байх ёстой:
Клиент-серверийг салгах: Үйлчлүүлэгч болон серверийн хооронд харилцахын тулд зөвхөн хэд хэдэн хүсэлт, хариултыг ашиглаж болно. Зөвхөн үйлчлүүлэгч болон серверүүд хүсэлт, хариултыг илгээх боломжтой. Энэхүү шууд санаа нь хоёр тал бие биенээсээ хамааралгүй ажиллах боломжийг олгодог.
Нэг төрлийн интерфэйс: Үйлчлүүлэгч-серверийн бүх холболтод нэгдсэн протокол байх ёстой. REST-д зориулсан энэ протокол нь HTTP юм. Аппликешн бүр ижил хэлээр өгөгдөл хүсч, илгээдэг тул тууштай интерфэйс нь интеграцийг хялбаршуулдаг.
Харьяалалгүй: Сервер нь харьяалалгүй харилцаанд өмнөх хүсэлт эсвэл хариултын бүртгэлийг хадгалдаггүй. Хүсэлт, хариулт бүр нь солилцоог дуусгахад шаардлагатай бүх мэдээллийг өгдөг. Харьяалалгүй харилцаа холбоо нь хурдыг нэмэгдүүлж, санах ойг хэмнэж, сервер дээрх стрессийг бууруулдаг. Нэмж дурдахад, энэ нь бүрэн бус мэдээллийн улмаас хүсэлт амжилтгүй болохоос сэргийлдэг.
Давхаргатай систем: Үйлчлүүлэгч болон API серверийн хооронд байрлах серверүүдийг давхарга гэж нэрлэдэг. Эдгээр нэмэлт серверүүд нь спам илрүүлэх, хурдыг оновчтой болгох зэрэг олон төрлийн үйлчилгээг гүйцэтгэдэг. REST дахь давхаргууд нь модульчлагдсан тул үйлчлүүлэгч болон API сервер хоорондын харилцаанд нөлөөлөхгүйгээр нэмж, устгаж болно.
Кэш хийх боломжтой: Хэрэв серверийн хариултууд нөөцийг кэш хийх боломжтой эсэхийг харуулж байвал үйлчлүүлэгчид хурдыг нэмэгдүүлэхийн тулд ямар ч нөөцийг кэш хийх боломжтой.
Хүсэлтийн дагуу кодчилол: Хариуд нь API нь гүйцэтгэх боломжтой компьютерийн кодыг хэрэглэгчдэд дамжуулах боломжтой. Дараа нь үйлчлүүлэгчийн програм кодыг өөрийн арын хэсэгт ажиллуулж болно.
6. REST дэмждэг HTTP аргуудыг дурд.
REST-ийн дэмждэг HTTP аргууд нь:
- GET: Энэ арга нь заасан URL-д байгаа эх сурвалжийг асуудаг. Хүсэлтийн биетийг оруулах ёсгүй, учир нь үүнийг үл тоомсорлох болно. Үүнийг дотоод эсвэл сервер дээр кэш хийх боломжтой.
- POST: Энэ арга нь өгөгдлийг боловсруулахын тулд үйлчилгээ рүү илгээдэг бөгөөд үйлчилгээ нь ихэвчлэн шинэ эсвэл өөрчлөгдсөн нөөцийг буцаах ёстой.
- PUT: Нөөцийг хүсэлтийн URL дээр шинэчилсэн.
- УСТГАХ: Нөөцийг хүсэлтийн URL дээр устгасан.
- Сонголтууд: Энэ нь дэмжигдсэн аргуудыг тодорхойлдог.
- HEAD: Хүсэлтийн URL-ын мета өгөгдлийг буцаана.
7. Тогтвортой интерфэйсийн тавьсан хязгаарлалтыг тайлбарла.
Үйлчлүүлэгчийг серверээс салгахын тулд байнгын интерфейс шаардлагатай.
Тогтвортой интерфэйсийг бий болгохын тулд дараах дөрвөн хязгаарлалт шаардлагатай:
- Нөөцийг тодорхойлох: Үйлчлүүлэгчийн хүсэлт нь нөөцийг (URI) тодорхойлохын тулд стандарт нөөцийн ID-г ашиглах ёстой.
- Эдгээр дүрслэлийг ашиглан нөөцийн зохицуулалт: Үйлчлүүлэгчид серверээс нөөцийн төлөөлөл авахдаа нөөцийн төлөвийг өөрчлөхөд шаардлагатай бүх мэдээлэлтэй байна.
- Өөрийгөө тайлбарлах зурвасууд: Мессежүүд нь хүлээн авагчийг ойлгоход шаардлагатай бүх мета өгөгдөл болон бусад мэдээллийг агуулдаг.
- Гипермедиа нь програмын төлөвийн хөдөлгүүр: Үйлчлүүлэгч-серверийн харилцааны суваг нь HTML гэх мэт гипермедиа бөгөөд серверийн хариултыг ойлгохын тулд үйлчлүүлэгчдэд API-д зориулсан баримт бичиг хэрэггүй.
8. REST Resource гэж яг юу вэ?
Нөөцүүд нь REST архитектур дахь RESTful вэб үйлчилгээний үндсэн бүрэлдэхүүн хэсэг юм. Эдгээр нь API үйлчлүүлэгчийн хандах шаардлагатай бүх чухал мэдээллийг агуулдаг.
HTML хуудас, зураг, видео эсвэл API үйл ажиллагаанд шаардлагатай бусад бүх төрлийн нөөцөд клиент-серверийн систем дэх серверээр дамжуулан хандах боломжтой.
Нөөцүүдийг Нэгдсэн нөөцийн танигчаар тодорхойлно. Текст, JSON эсвэл XML нь бүгд хүлээн зөвшөөрөгдсөн нөөцийн төлөөлөл юм. Үүнийг дурьдсаны дараа төлөөлөгчийн хэлбэрт ямар ч хязгаарлалт байхгүй.
9. JAX-RS таны хувьд юу гэсэн үг вэ?
JAX-RS гэгддэг RESTful вэб үйлчилгээнд зориулсан Java API-ийн ачаар Java дээр RESTful вэб үйлчилгээг бий болгох нь илүү хялбар байдаг. Хөгжүүлэгчид өгөгдсөн тэмдэглэгээг ашиглан нөөцүүд болон тэдгээрт хийж болох үйлдлүүдийг тайлбарлаж болно.
10. AJAX болон REST хоёр нь юугаараа ялгаатай вэ?
Аякс:
- Ajax бол динамик шинэчлэлт хийх боломжийг олгодог технологийн бүлэг юм хэрэглэгчийн интерфэйс Хуудсыг дахин ачаалах шаардлагагүй.
- Ajax нь үйлчлүүлэгч болон серверийн хоорондох асинхрон холбоог устгадаг.
АМРАХ:
- REST нь сервер болон үйлчлүүлэгчийн хоорондын харилцаа холбоог шаарддаг.
- Нөөцийг ашиглах нь REST-ийн ашигладаг URL бүтэц, хүсэлт/хариултын загварт чухал ач холбогдолтой.
11. Та RESTful вэб үйлчилгээний сул талуудыг жагсааж чадах уу?
Үйлчилгээ нь харьяалалгүй гэсэн ойлголтыг баримталдаг тул хуралдааныг үргэлжлүүлэх боломжгүй. (Үйлчлүүлэгч нь сессийн симуляцийн туршид сессийн ID-г дамжуулах үүрэгтэй.)
Аюулгүй байдлын хязгаарлалт нь REST-ийн үндсэн суурь биш юм. Үүнийг ашигладаг протоколууд нь аюулгүй байдлын урьдчилан сэргийлэх арга хэмжээг өвлөн авдаг. Тиймээс SSL/TLS-д суурилсан нэвтрэлт танилтыг нэгтгэх гэх мэт аюулгүй байдлын арга хэмжээг авахдаа болгоомжтой хандах нь чухал юм.
12. PUT болон POST техникүүд нь юугаараа ялгаатай вэ?
тавих:
- PUT хариултын кэш байхгүй.
- Idempotent (өөрөөр хэлбэл олон хүсэлт ижил үр дүнд хүрэх болно)
- хүсэлтийн ачааллыг шинэчлэх буюу зорилтот нөөцийг орлуулах.
ХОЛБОО:
- idempotent биш (өөрөөр хэлбэл, олон хүсэлт нь ижил нөөцийн үржвэрийг өгөх болно)
- Вэб сервер нь төлөвлөсөн нөөцөд тулгуурлан хүсэлтийн ачааллыг боловсруулдаг.
- Хэрэв тохирох кэш удирдлагын толгой хэсгийг оруулсан бол POST хариултыг кэш болгож болно.
13. Та RESTful вэб үйлчилгээг хэрхэн туршиж үздэг вэ?
RESTful вэб үйлчилгээний тест хийхэд Swagger, Postman зэрэг олон хэрэглүүр туслах боломжтой. Асуулгын параметрүүд, толгой хэсэг, хариултын толгой зэрэг хүсэлтийн параметрүүдийг шалгах нь сүүлийнх нь олон тооны боломжуудтай байдаг.
Шуудангийн ажилтан нь эцсийн цэгүүдэд хүсэлт гаргах, үр дүнг харуулахад ашиглагдаж болно. Мөн эдгээр хариултаас XML болон JSON үүсгэж болно.
Postman болон Swagger хоёулаа маш харьцуулж болохуйц функцуудыг хангадаг. Нөгөөтэйгүүр, Swagger нь төгсгөлийн баримт бичиг гэх мэт боломжуудыг санал болгодог.
14. Бодит ертөнцөд REST API-г тайлбарла.
- Аялал жуулчлалын болон тасалбарын вэбсайтууд нь агаарын тээврийн компаниудын API-ээр дамжуулан ашиглах боломжтой нислэгийн цаг, үнийг ашиглах боломжтой.
- Газрын зураг, навигацийн програмуудыг (Google Газрын зураг гэх мэт) ашиглахын тулд нийтийн тээврийн агентлагууд API-ээр дамжуулан өөрсдийн мэдээллээ бодит цаг хугацаанд олон нийтэд нээлттэй болгодог.
- Цаг агаарын програмууд нь цаг агаарын мэдээллийг харуулахын тулд цаг агаарын мэдээлэл солилцдог нээлттэй API ашигладаг.
- Хөгжүүлэгчид Google Газрын зургийн хэд хэдэн API-уудаар дамжуулан газрын зургийн өгөгдөлд хандах боломжтой. Эдгээр API-г хөгжүүлэгчид өөрсдийн програм, вэб сайтад динамик газрын зураг оруулахад ашигладаг.
15. Microservice Architecture хэрхэн ажилладаг вэ?
- Хүсэлтийг янз бүрийн төхөөрөмж ашиглан янз бүрийн үйлчлүүлэгчид илгээдэг.
- Үйлчлүүлэгчдийн биеийн байцаалтыг баталгаажуулсны дараа таниулах үйлчилгээ үзүүлэгчид хамгаалалтын жетон өгдөг.
- Үйлчлүүлэгчийн хүсэлтийг API Gateway удирддаг.
- Системийн бүх материал нь статик контент хэлбэрээр хадгалагдана.
- Удирдлагын хэрэгсэл нь зангилаа болон аливаа гэмтэл дээрх үйлчилгээний үлдэгдлийг шалгадаг.
- Микро үйлчилгээний хоорондын харилцааны замыг олж илрүүлэхэд үйлчилгээний нээлт тус болдог.
- Дата төвүүд болон прокси серверүүд нь контент дамжуулах сүлжээ гэж нэрлэгддэг тархсан сүлжээний системийг бүрдүүлдэг.
- Алсын үйлчилгээ нь алсаас мэдээлэл авах боломжийг олгодог.
16. Кэш гэж яг юу вэ?
Дараа нь илүү хурдан хандахын тулд серверийн хариултын хуулбарыг хаа нэгтээ (компьютерийн санах ой гэх мэт) түр хадгалах практикийг кэш гэж нэрлэдэг.
Хүсэлтийг хангахын тулд серверийн хийх ажлын хэмжээг бууруулж, кэш хийх нь REST API ашиглах үед серверийн хурдыг нэмэгдүүлдэг. API ашигладаг програмууд кэшийн ачаар илүү хурдан ажилладаг, учир нь тэдэнд нөөц хэрэгтэй болгонд шинэ хүсэлт гаргах шаардлагагүй байдаг.
HTTP хариултын толгой хэсгийн Cache-Control талбар нь тухайн нөөцийг дахин хандахаас өмнө үйлчлүүлэгч хэр удаан кэш хийж болох талаарх мэдээллийг агуулна.
17. Ачаалах ачааллыг тодорхойлно уу.
REST дахь ачаалал нь HTTP хариултын биед агуулагдах мэдээллийг хэлнэ. Үйлчлүүлэгч GET техникийг ашиглан холбогдох өгөгдлийг хүссэн.
Жишээ нь, хэрэв та Twitter API-аас тодорхой жиргээ хийхийг хүссэн бол жиргээний текст болон жиргээг вэб сайтад байрлуулахад шаардлагатай файлуудыг агуулсан баримт бичиг нь ачаалалд багтах болно. Нэмж дурдахад, POST аргыг ашиглан ачааллыг HTTP хүсэлтэд оруулах боломжтой.
18. Ялгах SAAP Vs REST?
- Зөвхөн XML-тэй ажиллах боломжтой SOAP-аас ялгаатай нь REST нь XML, текст, HTML, зураг, видео гэх мэт илүү өргөн хүрээний нөөцийн форматыг идэвхжүүлдэг.
- Онлайн програмуудад аюулгүй байдал чухал бол SOAP нь тустай. Гүйлгээг найдвартай хийх шаардлагатай үед REST-ийг ашиглах боломжгүй, учир нь энэ нь тийм ч найдвартай биш юм.
- SOAP нь зөвхөн протокол учраас REST үүнийг вэб үйлчилгээндээ ашиглах боломжтой боловч эсрэгээр нь ашиглах боломжгүй.
- REST нь зөвхөн вэб үйлчилгээг хөгжүүлэхэд ашигладаг архитектурын загвар бөгөөд үйлчлүүлэгч-серверийн тохиргоо, харьяалалгүй байдал, кэш хийх боломжтой хариулт, давхаргат систем, тууштай интерфэйс зэрэг тодорхой хязгаарлалтуудыг дагаж мөрддөг бол SOAP нь хатуу дагаж мөрдөх ёстой тодорхой стандартууд дээр ажилладаг протокол юм. руу.
- REST нь бүх нийтийн нөөцийн танигч (URI) ашигладаг бол SOAP нь үйлчлүүлэгчийн программуудад өөрийн боломжуудыг олгохын тулд үйлчилгээний интерфейсийг ашигладаг. REST нь SOAP-аас бага зурвасын өргөнийг шаарддаг, учир нь SOAP мессежүүд нь мэдээлэл ихтэй байдаг.
19. Тээврийн түвшний хамгаалалтын протоколыг (TLS) REST-тэй ашиглаж болох уу?
Үнэндээ бид чадна. REST клиент болон серверийн харилцаа холбоо TLS-ээр шифрлэгдсэн байдаг бөгөөд протокол нь үйлчлүүлэгчдэд серверүүдийг баталгаажуулах боломжийг олгодог.
Энэ нь Secure Socket Layer-ийн орлуулалт учраас аюулгүй холболт (SSL)-д ашиглагддаг. RESTful вэб үйлчилгээг HTTPS-тэй амжилттай хэрэгжүүлдэг, учир нь энэ нь TLS болон SSL-тэй үр дүнтэй хамтран ажилладаг.
REST нь хэрэгжүүлдэг протоколын шинж чанарыг өвлөн авдаг бөгөөд энэ нь энд анхаарах нэг зүйл юм. Үүний үр дүнд аюулгүй байдлын хамгаалалт нь REST-ийн ашигладаг протоколоос хамаардаг.
20. Идемпотентын аргууд: тэдгээр нь юу вэ? Энэ нь RESTful вэб үйлчилгээний ертөнцөд хэрхэн хамаатай вэ?
URI ижил байвал хүсэлтийн зарим HTTP аргууд нь нэг эсвэл хэд хэдэн удаа хүргэгдсэн эсэхээс үл хамааран серверт ижил нөлөө үзүүлдэг. Идемпотентын техникийг эдгээрийг нэрлэдэг.
Жишээлбэл, GET аргыг ашиглан URI-г хэдэн удаа ажиллуулснаас үл хамааран сервер үргэлж ижил үр дүнд хүрэх болно. Idempotent аргууд нь GET, PUT, PATCH зэрэг орно.
Idempotent HTTP аргууд нь RESTful-ийн ашигладаг зарим аргууд юм вэб програмууд. Эдгээр нь RESTful вэб үйлчилгээний үйл ажиллагааны тогтвортой байдлыг хангахад зайлшгүй шаардлагатай.
REST API ашигладаг хэрэглэгчид REST API-г санамсаргүйгээр давтан хүсэлт гаргахад хүргэдэг кодын алдаа гаргаж болно. Эдгээр дуудлага нь нөөцийг буруугаар ашиглах боломжтой.
21. HTTP үндсэн баталгаажуулалтын функц нь юу вэ?
Үндсэн баталгаажуулалтыг API-ийн нэг хэсэг болгон ашиглах үед хэрэглэгч хэрэглэгчийн нэр, нууц үгийг хөтөчөөр нэгтгэсэн "хэрэглэгчийн нэр: нууц үг" болон base64 кодчилсон хэлбэрээр оруулах ёстой.
Хөтөчөөс HTTP хүсэлт болгонд кодлогдсон утгыг “Зөвшөөрөл” толгой хэсгийн утга болгон хүргэнэ. Итгэмжлэх жуух бичгүүд дөнгөж кодлогдсон тул HTTPS хүсэлт илгээхдээ энэ маягтыг ашиглахыг зөвлөж байна, учир нь тэдгээр нь аюулгүй биш бөгөөд аюулгүй байдлын протоколуудыг ашиглаагүй тохиолдолд хэн ч саатуулж болзошгүй.
22. Та GraphQL нь микро үйлчилгээний архитектурыг бий болгоход хамгийн сайн сонголт гэж бодож байна уу?
GraphQL нь таны микро үйлчилгээний архитектурыг үйлчлүүлэгчдээсээ нууцалдаг тул бичил үйлчилгээ болон GraphQL нь төгс нийцдэг.
Урд хэсгээс та бүх өгөгдлийг нэг API-аас авахыг хүсч байгаа бол арын хэсгээс үүнийг микро үйлчилгээнд хуваахыг хүсч байна. Аль алинд нь хүрэх хамгийн сайн арга бол GraphQL ашиглах явдал юм.
Энэ нь аппликешн бүрт нэг API өгч, янз бүрийн үйлчилгээний өгөгдөлд нэгдэх боломжийг олгохын зэрэгцээ өөрийн backend-ээ микро үйлчилгээ болгон хуваах боломжийг олгоно.
23. Аюулгүй ба idempotent HTTP аргуудын үндсэн ялгаа нь юу вэ?
Идемпотентын аргууд нь нэг хүсэлтээр нэг юм уу хэд хэдэн удаа дуудагдсан үед ижил үр дүнд хүргэдэг. PUT арга нь идэвхгүй юм.
Бүх аюулгүй арга замууд нь үл мэдэгдэх боловч аюулгүй аргууд нь нөөцийг өөрчилдөггүй тул бүх idempotent аргууд аюулгүй байдаггүй. Жишээлбэл, GET нь зөвхөн өгөгдлийг олж авдаг бөгөөд нөөцийг өөрчилдөггүй тул аюулгүй байдаг.
Нэмж дурдахад, энэ нь idempotent буюу дуудсан үед үргэлж ижил хариултыг буцаана гэсэн үг юм.
24. RESTful Root Resource Classes JAX-RS API нь юуг илэрхийлдэг вэ?
Java Enterprise Edition нь JAX-RS API шаардлагад нийцсэн анги, интерфейсээр хангадаг. JAX-RS-ийн тусламжтайгаар REST архитектурын хэв маягаар Java вэб үйлчилгээг бий болгох нь илүү хялбар болсон.
JAX-RS API-д эх нөөцийн ангиуд нь зүгээр л "энгийн хуучин java объектууд" буюу POJO юм. Шаардлагатай вэб нөөцийг хэрэгжүүлэхийн тулд тэд JAX-RS тэмдэглэгээг ашигладаг.
Тэдэнд @ замын тэмдэглэгээ байна, эсвэл ядаж нэг арга нь @ замын тэмдэглэгээтэй байна. Тэдгээрийг API төгсгөлийн цэгүүдтэй харьцах аргуудтай Java ангиуд гэж дүгнэж болно.
25. Postman гэж яг юу вэ, яагаад үүнийг ашигладаг вэ?
Postman хэмээх API хөгжүүлэлтийн хэрэгсэл нь API үүсгэх, турших, өөрчлөхөд ашиглагддаг. Энэ хэрэгслийг хөгжүүлэгчид API-д шаардлагатай ямар ч функцэд ашиглаж болно. Энэ нь хөгжүүлэгчдийн ажлыг хялбарчилж, хөнгөвчилдөг.
Postman нь GET, POST, PUT, PATCH зэрэг олон төрлийн HTTP асуулга хийх, дараа нь ашиглах орчныг хадгалах, API-г хэд хэдэн хэлээр код болгон хөрвүүлэхэд хялбар болгодог.
API мөчлөгийн үе шат бүрийг Postman-ийн тусламжтайгаар хялбаршуулж, API-г илүү хурдан хөгжүүлэхийн тулд хамтын ажиллагааг сайжруулсан.
Нэмж дурдахад, энэ нь хөгжүүлэгчдэд баримт бичиг, техникийн үзүүлэлтүүд, туршилтын тохиолдол, процессууд болон API каталогийг удирдах боломжийг олгодог.
26. REST API-г хэрхэн аюулгүй байлгадаг вэ?
REST API нь SOAP API шиг аюулгүй байдлын хатуу хамгаалалт болгон ашигладаггүй тул нууц мэдээллийг тэдгээрийг ашиглан илгээж, сэргээж болохгүй.
Гэсэн хэдий ч найдвартай REST API нь найдвартай, найдвартай өгөгдөл дамжуулахад зориулсан аюулгүй байдлын хяналтыг нэгтгэсээр байна.
- Баталгаажуулалт ба зөвшөөрөл: API-д хийсэн хүсэлт бүр эдгээр хоёр шалгалтыг давах ёстой. Үйлчлүүлэгчийн хувийн мэдээллийг баталгаажуулалтаар баталгаажуулах, зөвшөөрөл авах замаар хүссэн нөөцөд хандах эрхтэй эсэхийг баталгаажуулах нь хоёр өөр процесс юм.
- Баталгаажуулалт: API нь нөөцдөө хандах эрх олгохоос өмнө баталгаажуулалт болон зөвшөөрлийн дараа хүсэлтүүд нь аюултай код байгаа эсэхийг шалгах ёстой. Тиймээс сервер нь тарилгын халдлагад нээлттэй байх болно.
- Баталгаажуулалт: API нь нөөцдөө хандах эрх олгохоос өмнө баталгаажуулалт болон зөвшөөрлийн дараа хүсэлтүүд нь аюултай код байгаа эсэхийг шалгах ёстой. Тиймээс сервер нь тарилгын халдлагад нээлттэй байх болно.
- Шифрлэлт: TLS/SSL шифрлэлт нь үйлчлүүлэгч болон серверийн хоорондох холболтыг хамгаалж, хакерууд хүсэлт, хариултыг таслан зогсоохоос хамгаалдаг.
- Хязгаарлалт, хязгаарлах зэрэг хурдыг хязгаарлах арга техникүүд нь серверүүдийг DDoS гэх мэт харгис хэрцгий халдлагаас хамгаалдаг бөгөөд энэ нь серверүүдийг доройтуулах эсвэл сүйрүүлэх зорилготой юм.
- URI-д нууц мэдээлэл байхгүй: Resources-ийн URI-д хамгаалагдсан өгөгдөл (хэрэглэгчийн нэр, нууц үг, баталгаажуулалтын тэмдэг гэх мэт) байх ёсгүй.
Дүгнэлт
Баяр хүргэе! REST API ярилцлагын хэд хэдэн энгийн асуултууд болон тэдгээрийн шийдлүүд одоо таны гарт байна.
Одоо та REST API-ийн ярилцлагын зарим асуултанд хэрхэн хариулах талаар сайн ойлголттой болсон тул ярилцлагад хариулах боломжтой. Дараагийн алхам нь таны зорилгоос хамаарна.
Бичигчийн Ярилцлагын цуврал Хашдорктой ярилцлагад бэлдэх.
хариу үлдээх