AI द्वारा अनुवादित। समुदाय ने अभी इसकी समीक्षा नहीं की है। अंग्रेज़ी में पढ़ें

ब्लॉग · 18 सितंबर 2023 · Steve Simpson · इंटीग्रेशन

Apex वेब सर्विस: वेब के जादूगरों के लिए बिल्डिंग ब्लॉक

परिचय:

इस ब्लॉग पोस्ट में मैं Salesforce में कस्टम Apex वेब सर्विस बनाने में गहराई से उतरूँगा। ये सर्विस तब ज़रूरी होती हैं जब आपको किसी बाहरी प्रोसेस से Salesforce में डेटा पढ़ना या लिखना हो, और स्टैंडर्ड REST API काफ़ी न हो। हम पाँच उदाहरणों से गुज़रेंगे, जिनकी जटिलता धीरे-धीरे बढ़ती है, स्टैंडर्ड क्वेरी से लेकर अपडेट तक।

डायग्राम: Postman से कॉल की जाने वाली पाँच कस्टम Apex वेब सर्विस के उदाहरण: रिकॉर्ड की सूची लौटाने वाला GET, रिस्पॉन्स ऑब्जेक्ट वाला GET, पैरामीटर वाला GET, POST, और एरर वाला POST

कस्टम वेब सर्विस का संक्षिप्त परिचय

हम कस्टम वेब सर्विस के पाँच उदाहरण देखेंगे:

स्टैंडर्ड SObject लिस्ट के साथ GET: स्टैंडर्ड SObject लिस्ट से डेटा लाना।

JSON रिस्पॉन्स वाला रैपर: GET रिक्वेस्ट को JSON रिस्पॉन्स में लपेटकर बेहतर बनाना।

पैरामीटर जोड़ना: ज़्यादा सटीक डेटा लाने के लिए GET रिक्वेस्ट में पैरामीटर जोड़ना।

इन्सर्ट के लिए POST: डेटा इन्सर्ट करने के लिए POST रिक्वेस्ट लागू करना।

एरर मैसेज लौटाना: एरर मैसेज को ठीक से संभालना और लौटाना।

कस्टम वेब सर्विस लागू करना

उदाहरण 1: स्टैंडर्ड SObject लिस्ट के साथ GET

इस उदाहरण में हम एक कस्टम URI के साथ REST रिसोर्स डिफ़ाइन करते हैं और HTTP वर्ब (GET) तय करते हैं। क्लास को global घोषित करना होता है, और हम एक सरल क्वेरी से स्टैंडर्ड अकाउंट की सूची लौटाते हैं।

Apex कोड: GET मेथड वाला एक REST रिसोर्स, जो Accounts की क्वेरी करता है और डिफ़ॉल्ट सीरियलाइज़ेशन के साथ सूची लौटाता है

उदाहरण 2: JSON रिस्पॉन्स वाला रैपर

क्लाइंट को वापस भेजे जाने वाले डेटा पर नियंत्रण रखने के लिए, हम एक रिस्पॉन्स ऑब्जेक्ट इस्तेमाल करते हैं। SObjects की सूची लौटाने के बजाय, हम कस्टम रिस्पॉन्स ऑब्जेक्ट की सूची लौटाते हैं, जो सिर्फ़ ID और नाम के साथ ग्राहक का हल्का रूप देती है।

Apex कोड: एक GET मेथड, जो ग्राहकों की सूची वाला रिस्पॉन्स ऑब्जेक्ट बनाता है

उदाहरण 3: पैरामीटर जोड़ना

जब आपको किसी ख़ास ग्राहक का डेटा चाहिए, तो पैरामीटर ज़रूरी होते हैं। RestContext.params पढ़कर आप ग्राहक की ID निकाल सकते हैं और डेटा फ़िल्टर करने के लिए उसे SOQL के WHERE क्लॉज़ में इस्तेमाल कर सकते हैं।

Apex कोड: एक GET मेथड, जो रिक्वेस्ट से customerid पैरामीटर पढ़ता है और उस ग्राहक को रिस्पॉन्स ऑब्जेक्ट में लौटाता है

उदाहरण 4: इन्सर्ट के लिए POST

जब आपको डेटा लिखना हो, तो POST मेथड इस्तेमाल होता है। इस उदाहरण में हम एक रिस्पॉन्स ऑब्जेक्ट और एक रिक्वेस्ट ऑब्जेक्ट बनाते हैं। रिक्वेस्ट ऑब्जेक्ट में नाम के साथ एक ग्राहक आता है, और हम JSON serializer से रिक्वेस्ट को एक ख़ास क्लास में बदलते हैं। नया अकाउंट बनाने और इन्सर्ट करने के बाद, सक्सेस स्टेटस लौटाया जाता है।

Apex कोड: एक POST मेथड, जो रिक्वेस्ट बॉडी पार्स करता है, एक Account इन्सर्ट करता है और सक्सेस या एरर स्टेटस लौटाता है

उदाहरण 5: एरर मैसेज लौटाना

यह उदाहरण उदाहरण 4 जैसा ही है, लेकिन इसमें एरर हैंडलिंग शामिल है। एक्सेप्शन होने पर एरर पकड़ा जाता है, एक सूची में जोड़ा जाता है, और स्टेटस कोड 500 (या आपकी पसंद का कोई भी नंबर) सेट किया जाता है।

Apex कोड: एरर हैंडलिंग वाला POST मेथड, जो एरर मैसेज और HTTP 500 स्टेटस कोड लौटाता है

निष्कर्ष

इन उदाहरणों से हमने Salesforce में कस्टम Apex वेब सर्विस बनाने के बुनियादी बिल्डिंग ब्लॉक दिखाए। एक सरल GET रिक्वेस्ट से शुरू करके, हमने धीरे-धीरे जटिलता बढ़ाई और पैरामीटर, POST रिक्वेस्ट और एरर हैंडलिंग जोड़ी।

जुड़े रहें

पढ़ने के लिए धन्यवाद, और मैं जल्द ही आपके साथ ज्ञान से भरे और रोमांच बाँटने का इंतज़ार कर रहा हूँ! यहाँ www.SteveTechArc.com पर और @SteveTechArc (opens in a new tab) YouTube चैनल पर जुड़े रहें। सब्सक्राइब करें और Salesforce की, और उसे दूसरे सिस्टम से इंटीग्रेट करने के तरीक़ों की, अपनी समझ बढ़ाएँ।

साथी आर्किटेक्ट्स और आर्किटेक्ट बनने की यात्रा पर चल रहे लोगों के साथ इंटीग्रेशन की जानकारी बाँटकर दुनिया बदलने में मदद कर रहे हैं!

AI की मदद से तैयार ट्रांसक्रिप्ट

STA 1.8