Мазмунга өтүү

Орто денгээлдеги долбоор: маалымат базасы бар REST API

Сабактын башталышы

Орто денгээлдеги долбоор: маалымат базасы бар REST API

Уйронгонунуздун баарын бир чыныгы иштеген кызматка чогултунуз

Негизги идея: REST API - бул бир гана ыкма эмес, чогуу иштеген кичине конугуулардын жыйындысы. Бул жыйынтыктоочу долбоордо сиз бир бутун кызматты - Китеп текчесин - курасыз, ал китептерди чыныгы маалымат базасында сактайт, аларды таза HTTP-маршруттар аркылуу берет, келген маалыматты текшерет, жазууну токен менен коргойт жана автотесттер аркылуу иштээрин далилдейт. Бул жерде такыр жанылык жок; максат - тааныш болуп калган болуктордун баарын жайгаштырса боло турган нерсеге бириктируу.
Аягында сиз буларды жасай аласыз:
  • кичине Express долбоорун катмарларга (маршруттар, маалымат, авторизация, тесттер) болуштуруу,
  • маалыматты SQLite базасында параметрлештирилген суроолор менен сактоо,
  • туура HTTP-этиштер жана статус коддору менен CRUD-маршруттарын долбоорлоо,
  • middleware катары текшеруу жана токен-аутентификация кошуу,
  • ичик тест раннери жана Supertest менен интеграциялык тесттерди жазуу.

1. Биз эмне курууда жана ал кантип бириге турганы

Биздин долбоор - Bookshelf API: китептердин тизмесин сактап, кардарларга аларды HTTP аркылуу тузуп, окуп, жанылап, очуруп берген кызмат. Бул "тузуу, окуу, жанылоо, очуруу" тортулугу ушунчалык кенири тарагандыктан, анын аты бар - CRUD - жана ал REST менен дээрлик так дал келет.

REST (Representational State Transfer) - бул HTTP API стили. Анын негизи: сиздин маалыматыныз - бул ресурстардын жыйындысы, ар биринин URL бар, ал эми сиз аларга HTTP-методдору менен аракет кыласыз. Китептердин жыйнагы /books дарегинде турат; жеке китеп /books/42 дарегинде. Сиз URLде этиш ойлоп таппайсыз (/getBook, /deleteBook) - HTTP-метод эмне каалаганынызды буга чейин айтып турат.

Салыштыруу. APIни китепкананын беруу текчеси катары элестетиниз. Текчелер (маалымат базасы) китептерди сактайт. Китепканачы (сиздин Express колдонмонуз) - текчелерге тие турган жалгыз адам; коноктор ага кайрылышы керек. Кээ бир суроолор - "42-китепти корсот" - баарына ачык. Башкалары - "китеп кош", "китеп ыргыт" - кызматтык беджди (авторизация токенин) талап кылат. Ал эми жаны китепти киргизуудон мурун, китепканачы форма туура толтурулганын текшерет (текшеруу). Ар бир катмардын оз жалгыз милдети бар.

Бир суроо ушул катмарлардан кантип отуп жатканы мына:

Кардар curl / браузер Express колдонмосу auth токен текшеруу validate тулку текшеруу иштеткич логика SQLite базасы books таблицасы суроо JSON жооп
Ар бир суроо иштеткич базага тие электе авторизация жана текшеруудон отот; жооп JSON турундо кайра кайтат.

APIни солдон онго окунуз: суроо текшерилет, валидацияланат, иштетилет, анан гана маалыматка жетет. Ушул милдеттерди болуп коюу орто денгээлдеги долбоорду бир чон чаташкан файл эмес, тейлое мумкун кылат.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө