एक वेब सेवा समापन बिंदु क्या है?


323

मान लीजिए कि मेरी वेब सेवा स्थित है http://localhost:8080/foo/mywebserviceऔर मेरी WSDL पर है http://localhost:8080/foo/mywebservice?wsdl

है http://localhost:8080/foo/mywebserviceकि समाप्ति बिंदु, यानी, यह मेरी वेब सेवा के URI या जहां SOAP संदेश प्राप्त हुआ है और unmarshalled रूप में ही है?

क्या आप मुझे समझा सकते हैं कि यह क्या है और इसका उद्देश्य क्या है?

जवाबों:


416

यह एक छोटा और उम्मीद से अधिक स्पष्ट उत्तर है ... हां, समापन बिंदु वह URL है जहां आपकी सेवा को क्लाइंट एप्लिकेशन द्वारा एक्सेस किया जा सकता है। एक ही वेब सेवा में कई समापन बिंदु हो सकते हैं, उदाहरण के लिए, विभिन्न प्रोटोकॉल का उपयोग करके इसे उपलब्ध कराना।


8
@ user137717 नहीं, वेबसाइटें वेब सेवाएं नहीं हैं। एक वेब सेवा मुख्य रूप से अनुप्रयोगों द्वारा उपयोग की जाती है, जबकि वेबसाइटें मुख्य रूप से मनुष्यों के लिए होती हैं।
lbalazscs

4
@ user137717 अंतिम बिंदु वह URL है जहां आपकी वेब सेवा को क्लाइंट एप्लिकेशन द्वारा एक्सेस किया जा सकता है। यदि आपको समझ में नहीं आता है कि वेब सेवा क्या है, तो उदाहरण के लिए पढ़ें: stackoverflow.com/questions/226108/…
lbalazscs

1
+1, मुझ से भी, और एक सवाल: क्यों न सिर्फ इसे (यानी "समापन बिंदु" कहा जाता है) एक "बेस यूआरआई"? क्या "एंडपॉइंट" और "बेस यूआरआई" के बीच एक मूलभूत अंतर है? धन्यवाद।
रोक दिया

1
@Withheld संकल्पनात्मक रूप से एक समापन बिंदु और उसके पते के बीच एक अंतर है, लेकिन व्यवहार में आमतौर पर पते का मतलब होता है, क्योंकि आम तौर पर आपको सेवा खोजने के लिए "समापन बिंदु" के साथ क्लाइंट को कॉन्फ़िगर करने की आवश्यकता होती है।
lbalazscs

2
@lbalazscs - आईपी-पता: 8080 / foo / ShoppingWebservice / खिलौने , आईपी-पता: 8080 / foo / ShoppingWebservice / पुस्तकें आदि - / खिलौने, / पुस्तकें हिस्सा क्या कहलाता है? क्या उन्हें एंडपॉइंट या संसाधन भी कहा जाता है?
मास्टरजॉ 2

47

टिप्पणी में पीटर से अद्यतन जवाब:

यह डे "पुरानी शब्दावली" है, प्रत्यक्ष रूप से WSDL2 "एंडपॉइंट" परिभाषा का उपयोग करें (WSDL2 "पोर्ट" का "समापन बिंदु")।


हो सकता है कि आपको इस दस्तावेज़ में कोई उत्तर मिले: http://www.w3.org/TR/wsdl.html

एक WSDL दस्तावेज़ नेटवर्क समापन बिंदु, या पोर्ट के संग्रह के रूप में सेवाओं को परिभाषित करता है। WSDL में, समापन बिंदु और संदेशों की सार परिभाषा को उनके ठोस नेटवर्क परिनियोजन या डेटा प्रारूप बाइंडिंग से अलग किया जाता है। यह अमूर्त परिभाषाओं के पुन: उपयोग की अनुमति देता है: संदेश, जो एक्सचेंज किए जा रहे डेटा का सार वर्णन कर रहे हैं, और पोर्ट प्रकार जो ऑपरेशन के सार संग्रह हैं। एक विशेष पोर्ट प्रकार के लिए कंक्रीट प्रोटोकॉल और डेटा प्रारूप विनिर्देश एक पुन: प्रयोज्य बंधन का गठन करता है। एक पोर्ट को एक पुन: प्रयोज्य बंधन के साथ एक नेटवर्क पते को जोड़कर परिभाषित किया गया है, और बंदरगाहों का एक संग्रह एक सेवा को परिभाषित करता है। इसलिए, एक WSDL दस्तावेज़ नेटवर्क सेवाओं की परिभाषा में निम्नलिखित तत्वों का उपयोग करता है:

  • प्रकार- कुछ प्रकार प्रणाली (जैसे XSD) का उपयोग करके डेटा प्रकार परिभाषाओं के लिए एक कंटेनर।
  • संदेश - डेटा का एक अमूर्त, टाइप की गई परिभाषा।
  • ऑपरेशन - सेवा द्वारा समर्थित एक कार्रवाई का एक सार विवरण।
  • पोर्ट टाइप-एक या एक से अधिक समापन बिंदुओं द्वारा समर्थित संचालन का एक सार सेट।
  • एक विशेष पोर्ट प्रकार के लिए एक ठोस प्रोटोकॉल और डेटा प्रारूप विनिर्देश बाइंडिंग।
  • पोर्टिंग एक एकल समापन बिंदु और एक नेटवर्क पते के संयोजन के रूप में परिभाषित किया गया है।
  • सेवा-संबंधित समापन बिंदुओं का एक संग्रह।

http://www.ehow.com/info_12212371_definition-service-endpoint.html

समापन बिंदु एक कनेक्शन बिंदु है जहां HTML फ़ाइलें या सक्रिय सर्वर पृष्ठ उजागर होते हैं। समापन बिंदु एक वेब सेवा समापन बिंदु को संबोधित करने के लिए आवश्यक जानकारी प्रदान करते हैं। समापन बिंदु एक संदर्भ या विनिर्देश प्रदान करता है जो संदेश को संबोधित करने वाले गुणों के एक समूह या परिवार को परिभाषित करने और एंड-टू-एंड संदेश विशेषताओं को देने के लिए उपयोग किया जाता है, जैसे कि समापन बिंदु के स्रोत और गंतव्य के लिए संदर्भ और वर्दी के लिए अनुमति देने के लिए संदेशों की पहचान "स्वतंत्र" संदेशों को संबोधित करना। समापन बिंदु एक पीसी, पीडीए या पॉइंट-ऑफ-सेल टर्मिनल हो सकता है।


72
"समापन बिंदु एक वेब सेवा समापन बिंदु को संबोधित करने के लिए आवश्यक जानकारी प्रदान करते हैं।" उस वाक्य से प्यार होगा! : डी
मुसौल

2
यह डे "पुरानी शब्दावली" है, प्रत्यक्ष रूप से WSDL2 "एंडपॉइंट" परिभाषा का उपयोग करें (WSDL2 "पोर्ट" का "समापन बिंदु")।
पीटर क्रूस

34

एक वेब सेवा समापन बिंदु वह URL है जिसका उपयोग आपके प्रोग्राम के साथ संवाद करने के लिए एक और प्रोग्राम करेगा। WSDL को देखने के लिए आप ?wsdlवेब सेवा समापन बिंदु URL में जोड़ें।

वेब सेवाएँ प्रोग्राम-टू-प्रोग्राम इंटरैक्शन के लिए हैं, जबकि वेब पेज प्रोग्राम-टू-ह्यूमन इंटरैक्शन के लिए हैं।

तो: समापन बिंदु है: http://www.blah.com/myproject/webservice/webmethod

इसलिए, WSDL है: http://www.blah.com/myproject/webservice/webmethod?wsdl


डब्लूएसडीएल के तत्वों पर और विस्तार करने के लिए, मुझे हमेशा उन्हें कोड की तुलना करने में मदद मिलती है:

एक WSDL के 2 भाग हैं (भौतिक और सार)।

भौतिक भाग:

परिभाषाएँ - चर - पूर्व: myVar, x, y, आदि।

प्रकार - डेटा प्रकार - पूर्व: इंट, डबल, स्ट्रिंग, myObjectType

संचालन - विधियाँ / कार्य - पूर्व: myMethod (), myFunction (), आदि।

संदेश - विधि / फ़ंक्शन इनपुट पैरामीटर और वापसी प्रकार

  • ex: public myObjectType myMethod ( स्ट्रिंग myVar)

पोर्ट्टिपेस - कक्षाएं (यानी वे संचालन के लिए एक कंटेनर हैं) - पूर्व: MyClass {}, आदि।

सार भाग:

बाइंडिंग - ये पोर्टटाइप्स से जुड़ते हैं और इस वेब सेवा के साथ संचार करने के लिए चुने गए प्रोटोकॉल को परिभाषित करते हैं। - एक प्रोटोकॉल संचार का एक रूप है (इसलिए पाठ / एसएमएस, बनाम फोन बनाम ईमेल, आदि)।

सेवा - यह उस पते को सूचीबद्ध करता है जहाँ कोई अन्य प्रोग्राम आपकी वेब सेवा (यानी आपका समापन बिंदु ) पा सकता है।


5
मैंने पाया कि "वेब सेवाएं प्रोग्राम-टू-प्रोग्राम इंटरैक्शन के लिए हैं, जबकि वेब पेज प्रोग्राम-टू-ह्यूमन इंटरैक्शन के लिए हैं" मुझे रोकने के लिए बहुत उपयोगी कथन है "नरक को लोग सिर्फ URL के रूप में अंतिम बिंदु क्यों नहीं कहेंगे"
मिन्नी

14

पिछली परियोजनाओं में मैंने काम किया था, समापन बिंदु एक रिश्तेदार संपत्ति थी। कहने का तात्पर्य यह है कि हो सकता है या नहीं जोड़ा गया हो, लेकिन इसमें हमेशा समाहित रहा protocol://host:port/partOfThePath

उदाहरण के लिए, यदि इस सेवा को बुलाया जा रहा है तो इसका एक गतिशील हिस्सा था ?param=dynamicValue, तो वह हिस्सा अंतिम बिंदु पर जुड़ जाएगा। लेकिन कई बार एंडपॉइंट का उपयोग किया जा सकता था, जैसा कि संशोधन किए बिना किया जाता है।

यह समझने के लिए महत्वपूर्ण है कि एक समापन बिंदु क्या नहीं है और यह कैसे मदद करता है। उदाहरण के लिए, एक समापन बिंदु में संग्रहीत जानकारी को पास करने का एक वैकल्पिक तरीका अलग-अलग गुणों में समापन बिंदु के विभिन्न भागों को संग्रहीत करना होगा। उदाहरण के लिए:

hostForServiceA=someIp
portForServiceA=8080
pathForServiceA=/some/service/path
hostForServiceB=someIp
portForServiceB=8080
pathForServiceB=/some/service/path

या यदि एक ही मेजबान और कई सेवाओं में पोर्ट:

host=someIp
port=8080
pathForServiceA=/some/service/path
pathForServiceB=/some/service/path

उन मामलों में पूर्ण URL को आपके कोड में इस तरह निर्मित करना होगा:

String url = "http://" + host + ":" + port + pathForServiceA  + "?" + dynamicParam + "=" + dynamicValue;

अनुबंध में इस तरह के रूप में एक समापन बिंदु के रूप में संग्रहीत किया जा सकता है

serviceAEndpoint=http://host:port/some/service/path?dynamicParam=

और हाँ कई बार हमने एंडपॉइंट को '=' सहित तक संग्रहीत किया। यह इस तरह कोड के लिए नेतृत्व:

String url = serviceAEndpoint + dynamicValue;

आशा है कि कुछ प्रकाश डाला।


7

सीधे शब्दों में कहें, एक समापन बिंदु एक संचार चैनल का एक छोर है। जब कोई API किसी अन्य सिस्टम के साथ इंटरैक्ट करता है, तो इस संचार के स्पर्श-बिंदुओं को एंडपॉइंट माना जाता है। एपीआई के लिए, एक समापन बिंदु में एक सर्वर या सेवा का URL शामिल हो सकता है। प्रत्येक समापन बिंदु वह स्थान है जहां से एपीआई उन संसाधनों तक पहुंच सकते हैं जिन्हें उन्हें अपने कार्य को पूरा करने की आवश्यकता होती है।

एपीआई 'अनुरोध' और 'प्रतिक्रियाओं' का उपयोग करके काम करते हैं। जब कोई API वेब एप्लिकेशन या वेब सर्वर से सूचना मांगता है, तो उसे एक प्रतिक्रिया मिलेगी। वह स्थान जो एपीआई अनुरोध भेजता है और जहां संसाधन रहता है, उसे समापन बिंदु कहा जाता है।

संदर्भ: https://smartbear.com/learn/performance-monitoring/api-endpoint/


6

एक समापन बिंदु एक रिश्तेदार या पूर्ण यूआरएल के रूप में निर्दिष्ट किया जाता है जो आमतौर पर प्रतिक्रिया में होता है। यह प्रतिक्रिया आमतौर पर एक सर्वर-साइड प्रक्रिया का परिणाम है जो, उदाहरण के लिए, JSON स्ट्रिंग का उत्पादन कर सकती है। उस स्ट्रिंग को उस एप्लिकेशन द्वारा उपभोग किया जा सकता है जिसने कॉल को समापन बिंदु पर बनाया था। इसलिए, सामान्य एंडपॉइंट्स में पूर्वनिर्धारित पहुंच बिंदु होते हैं, जो एक प्रक्रिया शुरू करने और / या प्रतिक्रिया देने के लिए टीसीपी / आईपी नेटवर्क के भीतर उपयोग किए जाते हैं। समापन बिंदु में URL के भीतर दिए गए पैरामीटर शामिल हो सकते हैं, कुंजी मान जोड़े के रूप में, एकाधिक कुंजी मूल्य जोड़े एक एम्परसेंड द्वारा अलग किए जाते हैं, जो समापन बिंदु को कॉल करने की अनुमति देता है, उदाहरण के लिए, एक अपडेट / इंसर्ट प्रक्रिया; इसलिए समापन बिंदुओं को हमेशा प्रतिक्रिया देने की आवश्यकता नहीं होती है, लेकिन प्रतिक्रिया हमेशा उपयोगी होती है, भले ही यह किसी ऑपरेशन की सफलता या विफलता को इंगित करने के लिए हो।


0

एक समापन बिंदु वेब सेवा के लिए एक URL है। और समापन बिंदु भी एक वितरित एपीआई है

सिंपल ऑब्जेक्ट एक्सेस प्रोटोकॉल (SOAP) एंडपॉइंट एक URL है । यह अंतर्निहित HTTP सेवा पर उस स्थान की पहचान करता है जहां वेब सेवा श्रोता आने वाले अनुरोधों के लिए सुनता है

संदर्भ: https://www.ibm.com/support/knowledgecenter/SSSHYH_7.1.0.4/com.ibm.netcoolimpact.doc/dsa/imdsa_web_netcool_impact_soap_endap_endpoint_c.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.