web services - Tesla's "REST" API, and honk_horn end-point -


  प्राप्त / वाहन / {id} / command / honk_horn  

के रूप में इस पोस्ट में देखा गया:

honk_horn संसाधन के लिए किस क्रिया का उपयोग किया जाना चाहिए, इसके बारे में एक बहस है उत्तर में शामिल हैं:

  • प्राप्त करें, क्योंकि आप संसाधन राज्य को नहीं बदल रहे हैं
  • पोस्ट और नहीं दबाएं क्योंकि दो बार हार्निंग नहीं idempotent
  • क्योंकि दो बार हार्निंग को इडेमपोटेंट माना जा सकता है: एस

शायद यहां समस्या की जड़ यह है कि honk_horn वास्तव में एक क्रिया है और संसाधन नहीं है, और इस प्रकार विशेष मामले में किसी को एपीआई के रूप में परिभाषित किया जाना चाहिए, जब शेष को शेष अंक जारी कर दिया जाए?

शायद यहां समस्या की जड़ यह है कि honk_horn वास्तव में एक कार्यवाही है और एक संसाधन नहीं

हाँ, मैं ऐसा कहूँगा, यह समस्या की मुख्यता है। एक संसाधन उन्मुख और हाइपरमीडिया आधारित दृष्टिकोण इस तरह दिख सकता है (मैसन के कार्यों का वर्णन करने के लिए):

  GET / vehicles / 12345 / horn = & gt; सींग की वापसी स्थिति (अपने आप में एक संसाधन) {वॉल्यूम: 5, संख्याऑफ़हॉक्स: 1025, @ प्रतिक्रियाएं: {"मान": {प्रकार: "शून्य", href: "/ वाहन / 12345 / सींग / मार्श", विधि: पोस्ट ", शीर्षक:" एक बार सन्दूक सींग के लिए यहां पोस्ट करें "}}} GET / वाहन / 12345 / सींग / हॉक्स = & gt; पिछली शर्मीली वापसी (अपने आप में एक संसाधन) {numberOfHonks: 1025, honks: [{दिनांक: "2010-12-24T10: 24: 12"}, {तारीख: "2010-12-24T10: 24: 14"}, { दिनांक: "2010-12-24 टी 10: 24: 20"}, ... 1022 अन्य सम्मान (या शायद केवल नवीनतम शीर्ष 100 सम्मान)]} पोस्ट / वाहन / 12345 / सींग / हॉक्स = & gt;  

मज़ा व्यायाम: -)


Comments

Popular posts from this blog

java - org.apache.http.ProtocolException: Target host is not specified -

java - Gradle dependencies: compile project by relative path -

ruby on rails - Object doesn't support #inspect when used with .include -