मैं एक ऐप बना रहा हूं जो डायनेमोडीबी से उस प्रोजेक्ट के लिए जानकारी वापस करने के लिए पूछताछ करता है जिस पर मैं काम कर रहा हूं।

जब आप एसडीके (मेरे मामले में मैं जावा का उपयोग कर रहा हूं) का उपयोग कर एक प्रोग्राम लिख रहा हूं, तो बस सोच रहा हूं कि एडब्ल्यूएस डायनेमोडीबी किस प्रकार का एपीआई उपयोग करता है।

मैं कोई जीईटी या पुट अनुरोध या कुछ भी नहीं बना रहा हूं क्योंकि एसडीके दृश्यों के पीछे मेरे लिए इसे हल करता है, लेकिन मैं उत्सुक हूं कि यह वास्तव में कैसे काम करता है।

मैंने दस्तावेज़ों को देखने का प्रयास किया है लेकिन वास्तव में कुछ भी नहीं मिला है, अगर आप लोग जानते थे तो आश्चर्य हुआ।

उदाहरण के लिए, यहां कोड का एक खंड जावा एसडीके के लिए एडब्ल्यूएस कोड उदाहरणों में कॉल किए जा रहे फ़ंक्शन को दिखाता है।

QueryResponse response = ddb.query(queryReq);

धन्यवाद!

0
Ash Oldershaw 13 नवम्बर 2019, 12:37

1 उत्तर

सबसे बढ़िया उत्तर

DynamoDB API अनुरोधों के लिए HTTP (या HTTPS) का उपयोग करता है, जिसमें JSON के रूप में एन्कोडेड अनुरोध और प्रतिक्रिया निकाय दोनों होते हैं; HTTP हेडर में ऑपरेशन का प्रकार और साथ ही अनुरोध के लिए एक प्राधिकरण हस्ताक्षर शामिल है, और अनुरोध निकाय में ऑपरेशन के विभिन्न पैरामीटर शामिल हैं (उदाहरण के लिए, UpdateItem ऑपरेशन को यह कहने की आवश्यकता है कि कौन सी तालिका शामिल है, कौन सी वस्तु, इसकी विशेषताओं को कैसे संशोधित किया जाता है) , विभिन्न स्थितियां, आदि। - यह सब एक JSON ऑब्जेक्ट के रूप में वर्णित है)। एकाधिक अनुरोधों के लिए एक एकल HTTP कनेक्शन का पुन: उपयोग किया जा सकता है। आप यहां उदाहरणों के साथ इस प्रोटोकॉल का एक सिंहावलोकन देख सकते हैं: https://docs.aws.amazon.com/amazondynamodb/ नवीनतम/डेवलपरगाइड/प्रोग्रामिंग.LowLevelAPI.html

जाहिर है, यह प्रोटोकॉल SOAP नहीं है, जो पूरी तरह से अलग जानवर है। मेरी राय में इसे "REST" कहना भी एक अच्छा विचार नहीं है (https में REST की परिभाषा देखें। ://en.wikipedia.org/wiki/Representational_state_transfer)। हालांकि आरईएसटी भी परिवहन के लिए HTTP का उपयोग करता है, यह इसे उसी तरह से उपयोग नहीं करता है, और डायनेमोडीबी एपीआई में आरईएसटी द्वारा निर्दिष्ट नहीं किए गए बहुत सारे विवरण हैं। लेकिन वे इस अर्थ में बहुत करीब हैं कि दोनों HTTP-आधारित प्रोटोकॉल हैं, और आप किसी भी HTTP क्लाइंट या लाइब्रेरी का उपयोग करके उन्हें आसानी से लागू कर सकते हैं।

2
Nadav Har'El 13 नवम्बर 2019, 15:43