విషయ సూచిక[దాచు][చూపండి]
- 1. REST ద్వారా మీరు ఏమి అర్థం చేసుకున్నారు?
- 2. మీరు REST API అంటే ఏమిటి?
- 3. URI అంటే ఏమిటి?
- 4. RESTful వెబ్ సేవల లక్షణాలు ఏమిటి?
- 5. REST యొక్క మార్గదర్శక సూత్రాలు ఏమిటి?
- 6. REST మద్దతిచ్చే HTTP పద్ధతులను పేర్కొనండి.
- 7. స్థిరమైన ఇంటర్ఫేస్ ద్వారా విధించబడిన పరిమితులను వివరించండి.
- 8. REST రిసోర్స్ అంటే ఏమిటి?
- 9. మీకు JAX-RS అంటే ఏమిటి?
- 10. AJAX మరియు REST లను ఒకదానికొకటి ఏది వేరు చేస్తుంది?
- 11. మీరు కొన్ని RESTful వెబ్ సేవల లోపాలను జాబితా చేయగలరా?
- 12. PUT మరియు POST టెక్నిక్లను ఒకదానికొకటి వేరు చేస్తుంది?
- 13. మీరు RESTful వెబ్ సేవలను ఎలా పరీక్షిస్తారు?
- 14. వాస్తవ ప్రపంచంలో REST APIని వివరించండి.
- 15. మైక్రోసర్వీస్ ఆర్కిటెక్చర్ ఎలా పని చేస్తుంది?
- 16. కాషింగ్ అంటే ఏమిటి?
- 17. పేలోడ్ను వివరించండి.
- 18. SOAP Vs RESTని వేరు చేయండి?
- 19. రవాణా లేయర్ సెక్యూరిటీ ప్రోటోకాల్ (TLS)ని RESTతో ఉపయోగించవచ్చా?
- 20. ఐడెంపోటెంట్ పద్ధతులు: అవి ఏమిటి? RESTful వెబ్ సేవల ప్రపంచానికి ఇది ఎలా వర్తిస్తుంది?
- 21. HTTP ప్రాథమిక ప్రమాణీకరణ యొక్క కార్యాచరణ ఏమిటి?
- 22. మైక్రోసర్వీస్ ఆర్కిటెక్చర్ని రూపొందించడానికి GraphQL ఉత్తమ ఎంపిక అని మీరు అనుకుంటున్నారా?
- 23. సురక్షితమైన మరియు ఐడెంపోటెంట్ HTTP పద్ధతుల మధ్య ప్రధాన వ్యత్యాసాలు ఏమిటి?
- 24. RESTful రూట్ రిసోర్స్ క్లాసెస్ ద్వారా JAX-RS API ఏమి సూచిస్తుంది?
- 25. పోస్ట్మ్యాన్ అంటే ఏమిటి మరియు అది ఎందుకు ఉపయోగించబడుతుంది?
- 26. REST APIలు ఎలా సురక్షితంగా ఉంచబడతాయి?
- ముగింపు
REST యొక్క పరిణామం APIలను నమ్మశక్యం కాని విధంగా అందుబాటులోకి తెచ్చింది, అదే సమయంలో వాటి పూర్తి బలం మరియు సామర్థ్యాన్ని కూడా వెల్లడిస్తుంది. REST APIలు వాటి వనరు-ఆధారిత నిర్మాణం కారణంగా సృష్టించడం మరియు కాష్ చేయడం సులభం.
అదనంగా, కాలమంతా, RESTful APIలు క్లౌడ్ కంప్యూటింగ్ మరియు మైక్రోసర్వీస్-ఆధారిత డిజైన్ వంటి ఇతర ముఖ్యమైన పరిణామాలకు ముందున్నవి.
అందువల్ల, REST API డెవలపర్లు ఈ రోజు డిమాండ్లో ఉండటంలో ఆశ్చర్యం లేదు, వారు RESTful సేవలను పోటీతత్వంతో ఉపయోగించుకునే వ్యాపారాలను ఎలా అందిస్తారు. REST APIలు ఒక ప్రసిద్ధ డిజైన్ ట్రెండ్.
చాలా IT సంస్థలు REST API పరిజ్ఞానాన్ని కోరుకుంటున్నాయి సాఫ్ట్వేర్ డెవలపర్లు మరియు సాంకేతిక ఇంటర్వ్యూలలో దాని గురించి అడగండి.
మీరు REST API డెవలప్మెంట్ ఫీల్డ్లో పని చేయాలనుకుంటే వివిధ సంస్థలలో ఇంటర్వ్యూలకు సిద్ధంగా ఉండటానికి మీకు సహాయపడే అత్యంత సాధారణ REST API ఇంటర్వ్యూ ప్రశ్నలు ఇక్కడ ఉన్నాయి.
1. REST ద్వారా మీరు ఏమి అర్థం చేసుకున్నారు?
REST అనేది హైపర్టెక్స్ట్ ట్రాన్స్ఫర్ ప్రోటోకాల్ (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 వెబ్ సేవల లక్షణాలు ఏమిటి?
- క్లయింట్-సర్వర్ నమూనా సేవ యొక్క పునాది.
- సేవ URIలను ఉపయోగించడం ద్వారా వనరులను యాక్సెస్ చేయగలదు.
- సేవ డేటా/వనరులను పొందేందుకు, ప్రశ్నలను అమలు చేయడానికి మరియు ఇతర పనులను చేయడానికి HTTP ప్రోటోకాల్ను ఉపయోగిస్తుంది.
- మెసేజింగ్ అనేది క్లయింట్ మరియు సర్వర్ మధ్య కమ్యూనికేట్ చేయడానికి ఉపయోగించే పద్ధతి పేరు.
- ఈ సేవలు SOAP సేవలను ఉపయోగించి REST నిర్మాణ నమూనాను కూడా అమలు చేయగలవు.
- అదే విధమైన పునరావృత అభ్యర్థనల కోసం సర్వర్ కాల్లను తగ్గించడానికి, ఈ సేవలు కాషింగ్ ఆలోచనను కూడా ఉపయోగిస్తాయి.
5. REST యొక్క మార్గదర్శక సూత్రాలు ఏమిటి?
REST APIల ద్వారా ఐదు ప్రమాణాలు తప్పనిసరిగా పాటించాలి:
క్లయింట్-సర్వర్ డికప్లింగ్: క్లయింట్ మరియు సర్వర్ మధ్య కమ్యూనికేట్ చేయడానికి అభ్యర్థనలు మరియు ప్రత్యుత్తరాల శ్రేణి మాత్రమే ఉపయోగించబడుతుంది. క్లయింట్లు మరియు సర్వర్లు మాత్రమే వరుసగా అభ్యర్థనలు మరియు సమాధానాలను పంపగలరు. ఈ సూటి ఆలోచన రెండు పార్టీలు ఒకదానికొకటి స్వతంత్రంగా పనిచేయడానికి వీలు కల్పిస్తుంది.
ఏకరీతి ఇంటర్ఫేస్: అన్ని క్లయింట్-సర్వర్ కనెక్షన్ల కోసం ఏకరీతి ప్రోటోకాల్ ఉండాలి. REST కోసం ఈ ప్రోటోకాల్ HTTP. ప్రతి అప్లికేషన్ ఒకే భాషను ఉపయోగించి డేటాను అభ్యర్థిస్తుంది మరియు పంపుతుంది కాబట్టి, స్థిరమైన ఇంటర్ఫేస్ ఇంటిగ్రేషన్లను సులభతరం చేస్తుంది.
స్థితిలేనిది: స్థితిలేని కమ్యూనికేషన్లో మునుపటి అభ్యర్థనలు లేదా సమాధానాల రికార్డులను సర్వర్ సేవ్ చేయదు. ప్రతి అభ్యర్థన మరియు సమాధానం మార్పిడిని పూర్తి చేయడానికి అవసరమైన అన్ని వివరాలను అందిస్తాయి. స్థితిలేని కమ్యూనికేషన్ వేగాన్ని పెంచుతుంది, మెమరీని ఆదా చేస్తుంది మరియు సర్వర్పై ఒత్తిడిని తగ్గిస్తుంది. అదనంగా, ఇది అసంపూర్ణ డేటా కారణంగా అభ్యర్థన విఫలమయ్యే సంభావ్యతను నివారిస్తుంది.
లేయర్డ్ సిస్టమ్: క్లయింట్ మరియు API సర్వర్ మధ్య ఉండే సర్వర్లను లేయర్లుగా సూచిస్తారు. ఈ అదనపు సర్వర్లు స్పామ్ని గుర్తించడం మరియు వేగాన్ని ఆప్టిమైజ్ చేయడం వంటి అనేక రకాల సేవలను అందిస్తాయి. RESTలోని లేయర్లు మాడ్యులర్గా ఉంటాయి, అంటే క్లయింట్ మరియు API సర్వర్ మధ్య కమ్యూనికేషన్లను ప్రభావితం చేయకుండా వాటిని జోడించవచ్చు మరియు తొలగించవచ్చు.
క్యాష్ చేయదగినది: రిసోర్స్ కాష్ చేయదగినదా కాదా అని సర్వర్ సమాధానాలు సూచిస్తే, క్లయింట్లు వేగాన్ని పెంచడానికి ఏదైనా వనరులను కాష్ చేయవచ్చు.
ఆన్-డిమాండ్ కోడింగ్: ప్రతిస్పందనగా, API వినియోగదారులకు ఎక్జిక్యూటబుల్ కంప్యూటర్ కోడ్ను ప్రసారం చేయగలదు. క్లయింట్ అప్లికేషన్ దాని స్వంత బ్యాక్ ఎండ్లో కోడ్ని అమలు చేయగలదు.
6. REST మద్దతిచ్చే HTTP పద్ధతులను పేర్కొనండి.
REST మద్దతిచ్చే HTTP పద్ధతులు:
- పొందండి: ఈ పద్ధతి పేర్కొన్న URL వద్ద వనరు కోసం అడుగుతుంది. అభ్యర్థన బాడీని చేర్చకూడదు ఎందుకంటే అది విస్మరించబడుతుంది. దీన్ని స్థానికంగా లేదా సర్వర్లో కాష్ చేయడం సాధ్యమవుతుంది.
- పోస్ట్: ఈ పద్ధతి ప్రాసెసింగ్ కోసం ఒక సేవకు డేటాను పంపుతుంది మరియు సేవ సాధారణంగా కొత్త లేదా మార్చబడిన వనరును తిరిగి ఇవ్వాలి.
- పుట్: అభ్యర్థన URL వద్ద వనరు నవీకరించబడింది.
- తొలగించు: అభ్యర్థన URL వద్ద వనరు తొలగించబడింది.
- ఎంపికలు: ఇది మద్దతు ఉన్న పద్ధతులను గుర్తిస్తుంది.
- హెడ్: అభ్యర్థన URL యొక్క మెటాడేటా తిరిగి ఇవ్వబడింది.
7. స్థిరమైన ఇంటర్ఫేస్ ద్వారా విధించబడిన పరిమితులను వివరించండి.
క్లయింట్ను సర్వర్ నుండి వేరు చేయడానికి, స్థిరమైన ఇంటర్ఫేస్ అవసరం.
స్థిరమైన ఇంటర్ఫేస్ను సాధించడానికి, కింది నాలుగు పరిమితులు అవసరం:
- వనరుల గుర్తింపు: క్లయింట్ అభ్యర్థనలు తప్పనిసరిగా వనరులను (URIలు) గుర్తించడానికి ప్రామాణిక వనరుల IDలను ఉపయోగించాలి
- ఈ ప్రాతినిధ్యాలను ఉపయోగించి రిసోర్స్ మానిప్యులేషన్: క్లయింట్లు సర్వర్ నుండి రిసోర్స్ ప్రాతినిధ్యాన్ని పొందినప్పుడు వనరుల స్థితిని మార్చడానికి అవసరమైన మొత్తం సమాచారాన్ని కలిగి ఉంటారు.
- స్వీయ-వివరణాత్మక సందేశాలు: సందేశాలలో మెటాడేటా మరియు రిసీవర్ అర్థం చేసుకోవడానికి అవసరమైన ఇతర సమాచారం ఉంటాయి.
- అప్లికేషన్ స్టేట్ ఇంజిన్గా హైపర్మీడియా: క్లయింట్-సర్వర్ కమ్యూనికేషన్ కోసం ఛానెల్ HTML వంటి హైపర్మీడియా మరియు సర్వర్ సమాధానాలను అర్థం చేసుకోవడానికి క్లయింట్లకు API-నిర్దిష్ట డాక్యుమెంటేషన్ అవసరం లేదు.
8. REST రిసోర్స్ అంటే ఏమిటి?
REST ఆర్కిటెక్చర్లో RESTful వెబ్ సేవ యొక్క ప్రాథమిక భాగాలు వనరులు. అవి API క్లయింట్ యాక్సెస్ చేయాల్సిన అన్ని కీలక సమాచారాన్ని కలిగి ఉంటాయి.
HTML పేజీ, చిత్రం, వీడియో లేదా API కార్యాచరణ కోసం అవసరమైన ఏదైనా వంటి ఏదైనా రకమైన వనరులను క్లయింట్-సర్వర్ సిస్టమ్లోని సర్వర్ ద్వారా యాక్సెస్ చేయవచ్చు.
వనరులు యూనిఫాం రిసోర్స్ ఐడెంటిఫైయర్ ద్వారా గుర్తించబడతాయి. వచనం, JSON లేదా XML అన్నీ ఆమోదయోగ్యమైన వనరుల ప్రాతినిధ్యాలు. ప్రాతినిధ్య ఆకృతిపై ఎటువంటి పరిమితులు లేవు అని పేర్కొన్నది.
9. మీకు JAX-RS అంటే ఏమిటి?
జావాలో RESTful వెబ్ సేవలను సృష్టించడం సులభం, RESTful వెబ్ సేవల కోసం Java APIకి ధన్యవాదాలు, తరచుగా JAX-RS అని పిలుస్తారు. డెవలపర్లు అందించిన ఉల్లేఖనాలను ఉపయోగించి వనరులను మరియు వాటిపై నిర్వహించగల కార్యకలాపాలను వివరించగలరు.
10. AJAX మరియు REST లను ఒకదానికొకటి ఏది వేరు చేస్తుంది?
అజాక్స్:
- అజాక్స్ అనేది డైనమిక్ అప్డేట్ చేయడానికి అనుమతించే సాంకేతికతల సమూహం వినియోగ మార్గము పేజీని మళ్లీ లోడ్ చేయకుండా మూలకాలు.
- అజాక్స్ క్లయింట్ మరియు సర్వర్ మధ్య అసమకాలిక కమ్యూనికేషన్ను తొలగిస్తుంది.
విశ్రాంతి:
- REST సర్వర్ మరియు క్లయింట్ మధ్య కమ్యూనికేషన్ను కోరుతుంది.
- REST ఉపయోగించే URL నిర్మాణం మరియు అభ్యర్థన/ప్రతిస్పందన నమూనాకు వనరుల వినియోగం ముఖ్యం.
11. మీరు కొన్ని RESTful వెబ్ సేవల లోపాలను జాబితా చేయగలరా?
సేవలు స్థితిలేని భావనకు కట్టుబడి ఉన్నందున సెషన్లను కొనసాగించడం సాధ్యం కాదు. (సెషన్ యొక్క అనుకరణ అంతటా సెషన్ ఐడిని పాస్ చేయడానికి క్లయింట్ బాధ్యత వహిస్తాడు.)
RESTకి భద్రతా పరిమితులు ప్రాథమికమైనవి కావు. దీన్ని ఉపయోగించే ప్రోటోకాల్లు భద్రతా జాగ్రత్తలను వారసత్వంగా పొందుతాయి. కాబట్టి, SSL/TLS-ఆధారిత ప్రమాణీకరణలను ఏకీకృతం చేయడం వంటి భద్రతా చర్యలను ఉంచేటప్పుడు జాగ్రత్త వహించడం ముఖ్యం.
12. PUT మరియు POST టెక్నిక్లను ఒకదానికొకటి వేరు చేస్తుంది?
ఉంచు:
- PUT ప్రతిస్పందనలకు కాష్ లేదు.
- Idempotent (అంటే బహుళ అభ్యర్థనలు ఒకే ఫలితాన్ని ఇస్తాయి)
- అభ్యర్థన యొక్క పేలోడ్ నవీకరణలు లేదా లక్ష్య వనరును భర్తీ చేస్తుంది.
POST:
- idempotent కాదు (అంటే, బహుళ అభ్యర్థనలు ఒకే వనరు యొక్క గుణిజాలను అందిస్తాయి)
- వెబ్ సర్వర్ ఉద్దేశించిన వనరు ఆధారంగా అభ్యర్థన యొక్క పేలోడ్ను ప్రాసెస్ చేస్తుంది.
- తగిన కాష్-నియంత్రణ హెడర్ చేర్చబడితే, POST ప్రత్యుత్తరాలు కాష్ చేయబడతాయి.
13. మీరు RESTful వెబ్ సేవలను ఎలా పరీక్షిస్తారు?
RESTful వెబ్ సేవా పరీక్ష స్వాగర్ మరియు పోస్ట్మాన్తో సహా అనేక సాధనాల ద్వారా సహాయపడుతుంది. క్వెరీ పారామీటర్లు, హెడర్లు మరియు ప్రతిస్పందన హెడర్ల వంటి అభ్యర్థన పారామీటర్లను పరిశీలించడం, తరువాతి ఫీచర్ల సమృద్ధి ద్వారా సాధ్యమవుతుంది.
పోస్ట్మ్యాన్ను ఎండ్ పాయింట్లకు అభ్యర్థనలు చేయడానికి మరియు ఫలితాలను చూపించడానికి ఉపయోగించవచ్చు. మరియు ఈ సమాధానాల నుండి XML మరియు JSON సృష్టించబడతాయి.
పోస్ట్మాన్ మరియు స్వాగర్ రెండూ చాలా పోల్చదగిన కార్యాచరణలను అందిస్తాయి. మరోవైపు, స్వాగర్ ఎండ్పాయింట్ డాక్యుమెంటేషన్ వంటి సామర్థ్యాలను కూడా అందిస్తుంది.
14. వాస్తవ ప్రపంచంలో REST APIని వివరించండి.
- ప్రయాణం మరియు టికెటింగ్ వెబ్సైట్లు APIల ద్వారా విమానయాన సంస్థలు అందుబాటులో ఉంచే విమాన సమయాలు మరియు ధరలను ప్రభావితం చేయగలవు.
- మ్యాపింగ్ మరియు నావిగేషన్ యాప్లు (గూగుల్ మ్యాప్స్ వంటివి) వాటిని ఉపయోగించడానికి, పబ్లిక్ ట్రాన్స్పోర్టేషన్ ఏజెన్సీలు తరచుగా తమ డేటాను APIల ద్వారా నిజ సమయంలో పబ్లిక్గా అందుబాటులో ఉంచుతాయి.
- వాతావరణ అనువర్తనాలు వాతావరణ సమాచారాన్ని ప్రదర్శించడానికి వాతావరణ డేటాను మార్పిడి చేసే ఓపెన్ APIలను ఉపయోగిస్తాయి.
- డెవలపర్లు దాని హోస్ట్ చేసిన అనేక APIల ద్వారా Google మ్యాప్స్ మ్యాపింగ్ డేటాను యాక్సెస్ చేయవచ్చు. ఈ APIలను డెవలపర్లు తమ యాప్లు మరియు వెబ్సైట్లలో డైనమిక్ మ్యాప్లను పొందుపరచడానికి ఉపయోగిస్తారు.
15. మైక్రోసర్వీస్ ఆర్కిటెక్చర్ ఎలా పని చేస్తుంది?
- వివిధ పరికరాలను ఉపయోగించి వివిధ కస్టమర్ల ద్వారా అభ్యర్థనలు పంపబడతాయి.
- ఖాతాదారుల గుర్తింపులను నిర్ధారించిన తర్వాత, గుర్తింపు ప్రదాతలు భద్రతా టోకెన్లను అందిస్తారు.
- క్లయింట్ అభ్యర్థనలు API గేట్వే ద్వారా నిర్వహించబడతాయి.
- సిస్టమ్ మెటీరియల్ అంతా స్టాటిక్ కంటెంట్గా భద్రపరచబడుతుంది.
- నిర్వహణ సాధనం నోడ్లలో సేవల బ్యాలెన్స్ను మరియు ఏదైనా లోపాలను తనిఖీ చేస్తుంది.
- మైక్రోసర్వీస్ల మధ్య కమ్యూనికేషన్ యొక్క మార్గాన్ని కనుగొనడం సేవా ఆవిష్కరణ ద్వారా సహాయపడుతుంది.
- డేటా కేంద్రాలు మరియు ప్రాక్సీ సర్వర్లు కంటెంట్ డెలివరీ నెట్వర్క్లు అని పిలువబడే చెదరగొట్టబడిన నెట్వర్క్ సిస్టమ్లను తయారు చేస్తాయి.
- రిమోట్ సేవలు దూరం నుండి సమాచార ప్రాప్యతను అందిస్తాయి.
16. కాషింగ్ అంటే ఏమిటి?
సర్వర్ జవాబు కాపీని తాత్కాలికంగా ఎక్కడైనా ఉంచే పద్ధతి (కంప్యూటర్ మెమరీ వంటివి) తర్వాత దాన్ని మరింత వేగంగా యాక్సెస్ చేయడం కోసం క్యాషింగ్ అంటారు.
అభ్యర్థనను సంతృప్తి పరచడానికి సర్వర్ చేయవలసిన పనిని తగ్గించడం ద్వారా REST APIలను ఉపయోగిస్తున్నప్పుడు కాషింగ్ సర్వర్ వేగాన్ని పెంచుతుంది. APIని ఉపయోగించే అప్లికేషన్లు కాషింగ్కు కృతజ్ఞతలు తెలుపుతూ వేగంగా రన్ అవుతాయి ఎందుకంటే వాటికి వనరు అవసరమైన ప్రతిసారీ కొత్త అభ్యర్థనను సమర్పించాల్సిన అవసరం లేదు.
HTTP ప్రతిస్పందన హెడర్ యొక్క కాష్-నియంత్రణ ఫీల్డ్లో రిసోర్స్ను మళ్లీ యాక్సెస్ చేయడానికి ముందు క్లయింట్ ఎంతకాలం కాష్ చేయవచ్చనే దాని గురించి సమాచారాన్ని కలిగి ఉంటుంది.
17. పేలోడ్ను వివరించండి.
RESTలోని పేలోడ్ అనేది HTTP ప్రతిస్పందన యొక్క బాడీలో ఉన్న సమాచారాన్ని సూచిస్తుంది. సందేహాస్పద డేటాను అభ్యర్థించడానికి కస్టమర్ GET సాంకేతికతను ఉపయోగించారు.
ట్వీట్ వచనాన్ని కలిగి ఉన్న పత్రం మరియు వెబ్సైట్లో ట్వీట్ను ఉంచడానికి అవసరమైన ఏవైనా ఫైల్లు పేలోడ్లో చేర్చబడతాయి, ఉదాహరణకు, మీరు నిర్దిష్ట ట్వీట్ కోసం Twitter APIని అడిగితే. అదనంగా, POST పద్ధతిని ఉపయోగించి HTTP అభ్యర్థనలో పేలోడ్ని చేర్చవచ్చు.
18. వేరు చేయండి సబ్బు Vs విశ్రాంతి?
- XMLని మాత్రమే నిర్వహించగలిగే SOAP వలె కాకుండా, REST XML, టెక్స్ట్, HTML, చిత్రాలు, వీడియో మరియు మరిన్నింటితో సహా విస్తృత శ్రేణి వనరుల ఫార్మాట్లను ప్రారంభిస్తుంది.
- ఆన్లైన్ అప్లికేషన్లకు భద్రత కీలకమైనప్పుడు, SOAP సహాయపడుతుంది. REST ప్రత్యేకించి సురక్షితం కానందున లావాదేవీలను సురక్షితంగా పూర్తి చేయవలసి వచ్చినప్పుడు ఉపయోగించబడదు.
- SOAP అనేది ఒక ప్రోటోకాల్ మాత్రమే కాబట్టి, REST దానిని తన వెబ్ సేవల్లో ఉపయోగించగలదు కానీ మరొక విధంగా కాదు.
- REST అనేది వెబ్ సేవలను అభివృద్ధి చేయడానికి ఉపయోగించే నిర్మాణ నమూనా మాత్రమే మరియు క్లయింట్-సర్వర్ సెటప్, స్థితిలేనితనం, క్యాచీబుల్ రెస్పాన్స్, లేయర్డ్ సిస్టమ్లు మరియు స్థిరమైన ఇంటర్ఫేస్ వంటి నిర్దిష్ట పరిమితులకు కట్టుబడి ఉంటుంది, SOAP అనేది నిర్దిష్ట ప్రమాణాలపై పనిచేసే ఒక ప్రోటోకాల్, ఇది ఖచ్చితంగా కట్టుబడి ఉండాలి. కు.
- REST యూనివర్సల్ రిసోర్స్ ఐడెంటిఫైయర్లను (URIలు) ఉపయోగిస్తుండగా, SOAP క్లయింట్ అప్లికేషన్లకు దాని సామర్థ్యాలను అందించడానికి సర్వీస్ ఇంటర్ఫేస్లను ఉపయోగిస్తుంది. SOAP సందేశాలు ఎక్కువ సమాచారం-భారీగా ఉన్నందున RESTకి SOAP కంటే తక్కువ బ్యాండ్విడ్త్ అవసరం ఉంది.
19. రవాణా లేయర్ సెక్యూరిటీ ప్రోటోకాల్ (TLS)ని RESTతో ఉపయోగించవచ్చా?
నిజానికి, మేము చేయవచ్చు. REST క్లయింట్ మరియు సర్వర్ యొక్క కమ్యూనికేషన్ TLS ద్వారా గుప్తీకరించబడింది మరియు ప్రోటోకాల్ క్లయింట్లకు సర్వర్లను ప్రామాణీకరించడానికి ఒక మార్గాన్ని కూడా అందిస్తుంది.
ఇది సురక్షిత సాకెట్ లేయర్ స్థానంలో ఉన్నందున, ఇది సురక్షిత కమ్యూనికేషన్ (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లలో భాగంగా ప్రాథమిక ప్రామాణీకరణను ఉపయోగిస్తున్నప్పుడు, వినియోగదారు తప్పనిసరిగా వినియోగదారు పేరు మరియు పాస్వర్డ్ను సమర్పించాలి, అవి బ్రౌజర్ ద్వారా “యూజర్నేమ్: పాస్వర్డ్” రూపంలో సంగ్రహించబడతాయి మరియు బేస్ 64 ఎన్కోడ్ చేయబడ్డాయి.
బ్రౌజర్ నుండి ప్రతి HTTP అభ్యర్థనపై, ఎన్కోడ్ చేయబడిన విలువ "అధికార" హెడర్కు విలువగా బట్వాడా చేయబడుతుంది. ఆధారాలు ఇప్పుడే ఎన్కోడ్ చేయబడినందున, HTTPS అభ్యర్థనలను పంపేటప్పుడు ఈ ఫారమ్ను ఉపయోగించమని సిఫార్సు చేయబడింది ఎందుకంటే అవి సురక్షితంగా లేవు మరియు భద్రతా ప్రోటోకాల్లను ఉపయోగించకపోతే ఎవరైనా అడ్డగించవచ్చు.
22. మైక్రోసర్వీస్ ఆర్కిటెక్చర్ని రూపొందించడానికి GraphQL ఉత్తమ ఎంపిక అని మీరు అనుకుంటున్నారా?
Microservices మరియు GraphQL సంపూర్ణంగా కొనసాగుతాయి ఎందుకంటే GraphQL మీ మైక్రోసర్వీస్ నిర్మాణాన్ని మీ క్లయింట్ల నుండి రహస్యంగా ఉంచుతుంది.
ఫ్రంట్ ఎండ్ నుండి, మీ డేటా మొత్తం ఒకే API నుండి రావాలని మీరు కోరుకుంటారు, అయితే బ్యాక్ ఎండ్ నుండి, మీరు దానిని మైక్రోసర్వీస్లుగా విభజించాలనుకుంటున్నారు. రెండింటినీ సాధించడానికి నాకు తెలిసిన అత్యుత్తమ సాంకేతికత GraphQLని ఉపయోగించడం.
ఇది మీ బ్యాకెండ్ను మైక్రోసర్వీస్లుగా విభజించడానికి మిమ్మల్ని అనుమతిస్తుంది, అయితే ప్రతి అప్లికేషన్కు ఒకే APIని ఇస్తుంది మరియు వివిధ సేవల నుండి డేటా అంతటా చేరడాన్ని ప్రారంభిస్తుంది.
23. సురక్షితమైన మరియు ఐడెంపోటెంట్ HTTP పద్ధతుల మధ్య ప్రధాన వ్యత్యాసాలు ఏమిటి?
ఐడెంపోటెంట్ పద్ధతులు ఒకే అభ్యర్థన ద్వారా ఒకసారి లేదా అనేక సార్లు ప్రారంభించినప్పుడు అదే ఫలితాన్ని అందిస్తాయి. PUT పద్ధతి అసమర్థమైనది.
అన్ని సురక్షితమైన మార్గాలు అసంపూర్తిగా ఉంటాయి, కానీ సురక్షితమైన పద్ధతులు వనరులను మార్చవు కాబట్టి అన్ని ఐడెంపోటెంట్ పద్ధతులు సురక్షితమైనవి కావు. ఉదాహరణకు, GET సురక్షితంగా ఉంటుంది, ఎందుకంటే ఇది డేటాను తిరిగి పొందుతుంది మరియు వనరును మార్చదు.
అదనంగా, ఇది అసంపూర్తిగా ఉంటుంది, అంటే ఇది ఎల్లప్పుడూ ప్రయోగించినప్పుడు అదే సమాధానాన్ని అందిస్తుంది.
24. RESTful రూట్ రిసోర్స్ క్లాసెస్ ద్వారా JAX-RS API ఏమి సూచిస్తుంది?
జావా ఎంటర్ప్రైజ్ ఎడిషన్ JAX-RS API అవసరాలకు కట్టుబడి ఉండే తరగతులు మరియు ఇంటర్ఫేస్లను అందిస్తుంది. JAX-RS సహాయంతో, REST నిర్మాణ శైలిలో జావా వెబ్ సేవలను సృష్టించడం సులభతరం చేయబడింది.
JAX-RS APIలో, రూట్ రిసోర్స్ తరగతులు కేవలం "సాదా పాత జావా వస్తువులు" లేదా POJO. అవసరమైన వెబ్ వనరులను అమలు చేయడానికి, వారు JAX-RS ఉల్లేఖనాలను ఉపయోగిస్తారు.
వారు @path ఉల్లేఖనాలను కలిగి ఉంటారు లేదా వారి పద్ధతుల్లో కనీసం ఒకదైనా @path ఉల్లేఖనాలను కలిగి ఉంటారు. API ముగింపు పాయింట్లతో వ్యవహరించే పద్ధతులతో వాటిని జావా తరగతులుగా సంగ్రహించవచ్చు.
25. పోస్ట్మ్యాన్ అంటే ఏమిటి మరియు అది ఎందుకు ఉపయోగించబడుతుంది?
పోస్ట్మ్యాన్ అనే API డెవలప్మెంట్ సాధనం APIలను సృష్టించడానికి, పరీక్షించడానికి మరియు సవరించడానికి ఉపయోగించబడుతుంది. ఈ సాధనాన్ని డెవలపర్లు API కోసం అవసరమైన ఏదైనా ఫీచర్ కోసం ఉపయోగించవచ్చు. ఇది డెవలపర్ల పనిని సులభతరం చేస్తుంది మరియు సులభతరం చేస్తుంది.
GET, POST, PUT మరియు PATCHతో సహా అనేక రకాల HTTP ప్రశ్నలను పోస్ట్మ్యాన్ సులభతరం చేస్తుంది, తర్వాత ఉపయోగం కోసం పర్యావరణాలను సేవ్ చేస్తుంది మరియు APIలను అనేక విభిన్న భాషల్లో కోడ్గా మార్చుతుంది.
API చక్రం యొక్క ప్రతి దశ పోస్ట్మాన్తో సరళీకృతం చేయబడింది మరియు త్వరిత API అభివృద్ధి కోసం సహకారం క్రమబద్ధీకరించబడుతుంది.
అదనంగా, ఇది డాక్యుమెంటేషన్, స్పెసిఫికేషన్లు, టెస్ట్ కేసులు, ప్రాసెస్లు మరియు API కేటలాగ్లను నిర్వహించడానికి డెవలపర్లను అనుమతిస్తుంది.
26. REST APIలు ఎలా సురక్షితంగా ఉంచబడతాయి?
REST APIలు SOAP APIల వలె కఠినమైన భద్రతా రక్షణగా ఉపయోగించబడవు కాబట్టి, వాటిని ఉపయోగించి సున్నితమైన డేటాను పంపకూడదు లేదా తిరిగి పొందకూడదు.
అయినప్పటికీ, విశ్వసనీయమైన REST APIలు సురక్షితమైన మరియు ఆధారపడదగిన డేటా ప్రసారాల కోసం భద్రతా నియంత్రణలను ఏకీకృతం చేయడం కొనసాగించాయి.
- ప్రమాణీకరణ మరియు అధికారం: APIకి చేసిన ప్రతి అభ్యర్థన తప్పనిసరిగా ఈ రెండు చెక్లను పాస్ చేయాలి. ప్రామాణీకరణ ద్వారా క్లయింట్ యొక్క గుర్తింపును ధృవీకరించడం మరియు ప్రామాణీకరణ ద్వారా అభ్యర్థించిన వనరులను యాక్సెస్ చేయడానికి వారికి అధికారం ఉందని ధృవీకరించడం రెండు వేర్వేరు ప్రక్రియలు.
- ధ్రువీకరణ: API దాని వనరులకు ప్రాప్యతను మంజూరు చేయడానికి ముందు, ప్రామాణీకరణ మరియు ప్రమాణీకరణ తర్వాత బహుశా హానికరమైన కోడ్ కోసం అభ్యర్థనలు తప్పనిసరిగా తనిఖీ చేయబడాలి. ఇంజెక్షన్ దాడికి సర్వర్ తెరవబడుతుంది.
- ధ్రువీకరణ: API దాని వనరులకు ప్రాప్యతను మంజూరు చేయడానికి ముందు, ప్రామాణీకరణ మరియు ప్రమాణీకరణ తర్వాత బహుశా హానికరమైన కోడ్ కోసం అభ్యర్థనలు తప్పనిసరిగా తనిఖీ చేయబడాలి. ఇంజెక్షన్ దాడికి సర్వర్ తెరవబడుతుంది.
- ఎన్క్రిప్షన్: TLS/SSL ఎన్క్రిప్షన్ క్లయింట్ మరియు సర్వర్ మధ్య కనెక్షన్ను రక్షిస్తుంది మరియు అభ్యర్థనలు మరియు సమాధానాలను అడ్డగించకుండా హ్యాకర్లను ఉంచుతుంది.
- పరిమితులు మరియు థ్రోట్లింగ్ వంటి రేట్-పరిమితం చేసే పద్ధతులు, సర్వర్లను అధోకరణం లేదా క్రాష్ చేసే లక్ష్యంతో DDoS వంటి బ్రూట్-ఫోర్స్ దాడుల నుండి రక్షిస్తాయి.
- URIలలో సున్నితమైన సమాచారం లేదు: వనరుల URIలు ఎటువంటి రక్షిత డేటాను కలిగి ఉండకూడదు (వినియోగదారు పేరు, పాస్వర్డ్ లేదా ప్రమాణీకరణ టోకెన్ వంటివి).
ముగింపు
అభినందనలు! అనేక ప్రాథమిక నుండి సంక్లిష్టమైన REST API ఇంటర్వ్యూ ప్రశ్నలు మరియు వాటికి సంబంధించిన పరిష్కారాలు ఇప్పుడు మీ చేతివేళ్ల వద్ద ఉన్నాయి.
ఇప్పుడు మీరు కొన్ని సాధారణ REST API ఇంటర్వ్యూ ప్రశ్నలకు ఎలా ప్రతిస్పందించాలనే మంచి భావనను కలిగి ఉన్నారు, మీరు ఇంటర్వ్యూలకు ప్రతిస్పందించడం కొనసాగించవచ్చు. తదుపరి దశ మీ లక్ష్యాలపై ఆధారపడి ఉంటుంది.
సందర్శించండి ఇంటర్వ్యూ సిరీస్ ఇంటర్వ్యూలకు సిద్ధం కావడానికి Hashdorkతో.
సమాధానం ఇవ్వూ