रेस्टिटो टूल का उपयोग करके अन्य क्लाइंट परीक्षण

विषय - सूची:

Anonim

REST क्या है?

REST का अर्थ "रिप्रेजेंटेशन स्टेट ट्रांसफर" है, जो किसी भी समय दो बिंदुओं के बीच संचार का एक नया तरीका है। एक सिस्टम को 'REST क्लाइंट' कहा जाता है और दूसरे को 'REST सर्वर' कहा जाता है।

इस REST ट्यूटोरियल में, आप सीखेंगे:

  • REST क्या है?
  • REST क्लाइंट क्या है?
  • REST सर्वर क्या है?
  • रेस्टिटो क्या है?
  • रेस्टिटो का उपयोग करके REST क्लाइंट का परीक्षण कैसे करें?
  • बाकी ग्राहक परीक्षण के लिए रेस्टिटो फ्रेमवर्क का उपयोग करने के लाभ
  • रेस्ट क्लाइंट टेस्टिंग के लिए रेस्टिटो फ्रेमवर्क का उपयोग करने के नुकसान

रेस्ट क्लाइंट टेस्टिंग के लिए रेस्टिटो फ्रेमवर्क के बारे में जानने से पहले, आइए पहले कुछ मूल बातें जानें।

REST क्लाइंट क्या है?

REST क्लाइंट एक विधि या उपकरण है जो REST सेवा API को लागू करता है जो किसी भी सिस्टम या सेवा प्रदाता द्वारा संचार के लिए उजागर किया जाता है। उदाहरण के लिए: यदि Google से किसी मार्ग के बारे में वास्तविक समय ट्रैफ़िक जानकारी प्राप्त करने के लिए किसी API को उजागर किया जाता है, तो वह सॉफ़्टवेयर / उपकरण जो Google ट्रैफ़िक API को आमंत्रित करता है, उसे REST क्लाइंट कहा जाता है।

REST सर्वर क्या है?

यह एक विधि या एपीआई है जो किसी भी प्रणाली या सेवा प्रदाता द्वारा संचार के संपर्क में है। उदाहरण के लिए, Google किसी दिए गए मार्ग पर वास्तविक समय ट्रैफ़िक जानकारी प्राप्त करने के लिए एक एपीआई को उजागर करता है।

यहां, Google सर्वर को अलग-अलग क्लाइंट से उजागर एपीआई के लिए किसी भी अनुरोध को सुनने के लिए ऊपर और चलने की आवश्यकता है।

उदाहरण:

यह उपरोक्त परिभाषाओं से पूर्ण एंड-टू-एंड परिदृश्य स्थापित करने का समय है।

आइए हम उबर जैसे एक टैक्सी बुकिंग अनुप्रयोगों पर विचार करें क्योंकि एक कंपनी को उन मार्गों के आसपास की यातायात स्थिति की वास्तविक समय की जानकारी की आवश्यकता होती है जो किसी दिए गए वाहन में स्थित हैं।

बाकी ग्राहक:

यहां क्लाइंट एक उबर मोबाइल एप्लिकेशन है जिसे ड्राइवर ने लॉग ऑन किया है। यह ऐप वास्तविक समय डेटा प्राप्त करने के लिए Google मानचित्र द्वारा उजागर REST एपीआई के लिए एक अनुरोध भेजता है। उदाहरण के लिए, A HTTP GET अनुरोध।

बाकी सर्वर:

इस उदाहरण में, Google सेवा प्रदाता है, और Google मैप्स एपीआई उबेर ऐप के अनुरोध के लिए आवश्यक विवरणों के साथ प्रतिक्रिया करता है।

REST संचार में क्लाइंट और सर्वर दोनों समान रूप से महत्वपूर्ण हैं।

यहां, हमने केवल REST क्लाइंट के स्वचालन परीक्षण के लिए उदाहरणों को लागू किया है। REST सर्वर के परीक्षण के लिए, https://www.guru99.com/top-6-api-testing-tool.html देखें।

रेस्टिटो क्या है?

रेस्टिटो Mkotsur द्वारा विकसित एक रूपरेखा है। यह किसी भी तरह के HTTP रिक्वेस्ट को निष्पादित करने में मदद करने के लिए एक हल्का ऐप है। आप अपने REST API का परीक्षण करने और अपने एप्लिकेशन या अपने नेटवर्क में समस्याओं को खोजने के लिए Restito का उपयोग कर सकते हैं।

रेस्टिटो का उपयोग करके REST क्लाइंट का परीक्षण कैसे करें?

आइए हम व्यायाम को निम्नलिखित 4 चरणों में विभाजित करते हैं:

  1. HTTP क्लाइंट बनाएं और किसी भी सर्वर एंडपॉइंट पर HTTP GET रिक्वेस्ट भेजने का तरीका। अभी के लिए, समापन बिंदु को http: // localhost: 9092 / getevents पर विचार करें।
  1. स्थानीयहोस्ट http: // localhost: 9092 / getevents में समापन बिंदु 'getevents' के लिए भेजे गए अनुरोधों को सुनने और पकड़ने के लिए एक Restito सर्वर शुरू करें।
  1. उपरोक्त क्लाइंट का परीक्षण करने के लिए एक परीक्षण वर्ग बनाएं। HTTP क्लाइंट 'sendGETRequest' विधि को एपीआई 'गेटवेट' के लिए GET अनुरोध आरंभ करने के लिए आमंत्रित करें।
  1. रेस्टिटो फ्रेमवर्क का उपयोग करके HTTP जीईटी कॉल को मान्य करें।

हमें उपरोक्त चरणों में से प्रत्येक में गहरा गोता लगाने दें।

चरण 1) एक HTTP क्लाइंट बनाएँ और किसी भी सर्वर एंडपॉइंट पर HTTP GET अनुरोध भेजने के लिए विधि।

========== जावा कोडे शुरू होता है ===========

पैकेज com.chamlabs.restfulservices.client;आयात java.util.HashMap;आयात java.util.Map;import org.apache.http.client.HttpClient;आयात org.apache.http.client.methods.HttpGet;आयात org.apache.http.client.methods.HttpPost;आयात org.apache.http.entity.StringEntity;आयात org.apache.http.impl.client.HttpClientBuilder;आयात org.json.JSONObject;/ *** यह वर्ग HTTP क्लाइंट बनाता है और HTTP GET अनुरोध भेजने की एक विधि है:* sendGETRequest (…)* /सार्वजनिक वर्ग RestClient {/ *** वर्ग RestClient के लिए निर्माता* /सार्वजनिक RestClient () {System.out.println ("RestClient कंस्ट्रक्टर बनाना");}/ *** Http: // localhost: << port >> / getevents के लिए GET अनुरोध भेजने की विधि* @पारम बंदरगाह* Gret का अनुरोध सफलतापूर्वक भेजे जाने पर @ सच। झूठा, अन्यथा।* /सार्वजनिक स्थैतिक बूलियन sendGETRequest (int port) {प्रयत्न {HttpClient ग्राहक = HttpClientBuilder.create ()। Build ();HttpGet getRequest = new HttpGet ("http: // localhost: + port + "/ getevents");// HttpResponse प्रतिक्रिया = client.execute (अनुरोध);client.execute (getRequest);System.out.println ("HTTP अनुरोध सफलतापूर्वक भेजा गया है।"+ "रिटर्निंग ट्रू");सच लौटना;}पकड़ (अपवाद ई) {e.printStackTrace ();}System.out.println ("HTTP क्लाइंट निर्माण के दौरान कुछ अपवाद हुआ है।"+ "झूठे लौटना");विवरण झूठा है;}}

========== जावा कोडे समाप्त ===========

चरण 2) स्थानीयहोस्ट http: // localhost: 9092 / getevents में समापन बिंदु 'getevents' के लिए भेजे गए अनुरोधों को सुनने और पकड़ने के लिए एक रेस्टिटो सर्वर शुरू करें।

========== जावा कोडे शुरू होता है ===========

पैकेज com.chamlabs.restfultesting.util;आयात स्थिर com.xebialabs.restito.builder.stub.StubHttp.whenHttp;आयात स्थिर com.xebialabs.restito.semantics.Action.status;आयात स्थिर com.xebialabs.restito.semantics.Condition.get;आयात स्थिर com.xebialabs.restito.semantics.Condition.post;आयात java.util.ist;आयात org.glassfish.grizzly.http.util.ttpStatus;आयात com.xebialabs.restito.semantics.Call;आयात com.xebialabs.restito.server.StubServer;/ *** इस उपयोगिता वर्ग में कई उपयोगिता विधियाँ शामिल हैं जैसे:* पुनरारंभ करें* पुनरारंभ करें* WaitAndGetCallList (…)** @ चथर चम् ६* @email: [email protected]* @ फोर्क: https://github.com/cham6/restfultesting.git** /सार्वजनिक वर्ग TestUtil {/ *** उपयोगिता विधि जीईटी अनुरोधों को स्वीकार करने के लिए रेस्टिटो स्टब सर्वर शुरू करने के लिए* @ अपरम सर्वर* @पारम बंदरगाह* @ अपरम स्थिति* /सार्वजनिक स्थैतिक शून्य पुनरारंभ{{// रेस्टो सर्वर को मारेंअगर (सर्वर! = null) {server.stop ();}// स्टुब सर्वर का एक नया उदाहरण प्रारंभिक और कॉन्फ़िगर करेंserver = new StubServer (port) .run ();जब।}/ *** उपयोगिता विधि POST अनुरोध स्वीकार करने के लिए रेस्टिटो स्टब सर्वर शुरू करने के लिए* @ अपरम सर्वर* @पारम बंदरगाह* @ अपरम स्थिति* /सार्वजनिक स्थैतिक शून्य पुनरारंभ{{// रेस्टो सर्वर को मारेंअगर (सर्वर! = null) {server.stop ();}// स्टुब सर्वर का एक नया उदाहरण प्रारंभिक और कॉन्फ़िगर करेंserver = new StubServer (port) .run ();जब।}/ *** दिए गए रेस्टिटो स्टब सर्वर के लिए, दिए गए राशि के सेकंड और लूप के लिए* सर्वर से कॉल सूची को तोड़ना और वापस करना।** @ अपरम सर्वर* @ वानम वेटटाइमइन्कॉन्ड्स* @वापसी* @ तीर बाधित* /सार्वजनिक स्थैतिक सूची  WaitAndGetCallList (StubServer सर्वर, int WaitTimeInSeconds)इंटरप्टेड अपवाद को फेंकता है{{int timeoutCount = 0;सूची  callList = server.getCalls ();जबकि (callList.isEmpty ()) {थ्रेड.स्लीप (1000);टाइमआउटाउंट ++;अगर (timeoutCount> = WaitTimeInSeconds) {टूटना;}callList = server.getCalls ();}// किसी भी फेकनेस को खत्म करने के लिए कॉल में सभी कॉल प्राप्त करने के लिए 2 सेकंड तक प्रतीक्षा करें।थ्रेड.स्लीप (2000);वापसी server.getCalls ();}}

========== जावा कोडे समाप्त ===========

चरण 3) उपरोक्त क्लाइंट का परीक्षण करने के लिए एक परीक्षण वर्ग बनाएं। HTTP क्लाइंट SendGETRequest विधि को API 'getevents' के लिए GET अनुरोध आरंभ करने के लिए आमंत्रित करें।

========== जावा कोडे शुरू होता है ===========

आयात junit.framework.TestCase;आयात com.chamlabs.restfulservices.client.RestClient;आयात com.chamlabs.restfultesting.util.TestUtil;आयात com.xebialabs.restito.semantics.Call;आयात com.xebialabs.restito.server.StubServer;आयात स्थिर org.glassfish.grizzly.http.util.HttpStatus.ACCEPTED_202;आयात org.json.JSONObject;आयात java.util.ist;आयात java.util.Map;/ *** इस वर्ग में RestClient संचालन को मान्य करने के लिए कई जूनियर परीक्षण शामिल हैं:* अनुरोध भेजा(… )* sendRequestWithCustomHeaders (…)* sendPOSTRequestWithJSONBody (…)** /सार्वजनिक वर्गनिजी स्थिर अंतिम इंटेगर पोर्ट = 9098;निजी स्थिर अंतिम पूर्णांक PORT2 = 9099;निजी स्थिर अंतिम पूर्णांक PORT3 = 9097;सार्वजनिक RestClientTester () {System.out.println ("परीक्षण RestClientTester शुरू करना");}/ *** RestClient से GET अनुरोध को मान्य करने के लिए जूनिट टेस्ट* कदम:* 1) रेस्टिटो फ्रेमवर्क का उपयोग करके एक स्टब सर्वर बनाएं और दिए गए पोर्ट पर सुनने के लिए इसे कॉन्फ़िगर करें* 2) SendGETRequest (…) को RestClient की विधि में शामिल करें* 3) रेस्टिटो किसी भी तरह से भेजे गए मैचिंग जीईटी अनुरोधों को पकड़ लेता है।* 4) मान्य करें यदि रेस्टिटो ने दिए गए समापन बिंदु पर किसी भी GET अनुरोध पर कब्जा कर लिया है* अपेक्षित व्यवहार:* - रेस्टिटो को GET अनुरोध पर कब्जा करना चाहिए था और उसे केवल एक GET अनुरोध पर कब्जा करना चाहिए था।* आखिरकार:* * स्टॉब सर्वर को रेस्टिटो का उपयोग करना शुरू करें।* /सार्वजनिक शून्य परीक्षणStubServer सर्वर = null;प्रयत्न {// यह 'पोर्ट' पर स्टब सर्वर शुरू करेगा और HTTP 202 'ACCEPTED_202' के साथ प्रतिक्रिया देगाTestUtil.restartRestitoServerForGETRequests (सर्वर, पोर्ट, ACCEPTED -202);RestClient.sendGETRequest (पोर्ट);सूची  callList = TestUtil.waitAndGetCallList (सर्वर, 30);मुखरता से ("जीएसटी अनुरोध को रिक्लेकिएंट से प्राप्त नहीं हुआ है। परीक्षण विफल हुआ।"(callList! = null) && (callList.size () == 1));}पकड़ (अपवाद ई) {e.printStackTrace ();विफल ("अपवाद के कारण परीक्षण विफल: + ई);}आखिरकार {अगर (सर्वर! = null) {server.stop ();}}}

========== जावा कोडे समाप्त ===========

चरण 4) हेडर और पोस्ट के साथ जीएसटी अनुरोध को रेस्टिटो फ्रेमवर्क का उपयोग करके शरीर के साथ कैसे मान्य करें।

========== जावा कोडे शुरू होता है ===========

/ *** रिस्टोरिट से हेडर के साथ जीईटी अनुरोध को मान्य करने के लिए जूनिट टेस्ट* कदम:* 1) रेस्टिटो फ्रेमवर्क का उपयोग करके एक स्टब सर्वर बनाएं और दिए गए पोर्ट पर सुनने के लिए इसे कॉन्फ़िगर करें* 2) SendGETRequestWithCustomHeaders (…) RestClient की विधि को शामिल करें* 3) रेस्टिटो किसी भी तरह से भेजे गए मैचिंग जीईटी अनुरोधों को पकड़ लेता है।* 4) मान्य करें यदि रेस्टिटो ने किसी दिए गए समापन बिंदु पर किसी भी GET अनुरोध को कैप्चर किया है* अपेक्षित व्यवहार:* - रेस्टिटो को GET अनुरोध पर कब्जा करना चाहिए था, और इसे केवल एक GET अनुरोध पर कब्जा करना चाहिए था।*> पकड़े गए GET अनुरोध के हेडर प्राप्त करें* और सुनिश्चित करें कि हेडर कॉन्फ़िगर किए गए से मेल खाते हैं।* आखिरकार:* * स्टॉब सर्वर को रेस्टिटो का उपयोग करना शुरू करें।* /सार्वजनिक शून्य परीक्षणStubServer सर्वर = null;प्रयत्न {// यह 'पोर्ट' पर स्टब सर्वर शुरू करेगा और HTTP 202 'ACCEPTED_202' के साथ प्रतिक्रिया देगाTestUtil.restartRestitoServerForGETRequests (सर्वर, PORT2, ACCEPTED_202);RestClient.sendGETRequestWithCustomHeaders (PORT2);सूची  callList = TestUtil.waitAndGetCallList (सर्वर, 30);मुखरता से ("जीएसटी अनुरोध को रिक्लेकिएंट से प्राप्त नहीं हुआ है। परीक्षण विफल हुआ।"(callList! = null) && (callList.size () == 1));// REST क्लाइंट से GET अनुरोध के हेडर को सत्यापित करेंनक्शा <स्ट्रिंग, सूची <स्ट्रिंग >> हेडरफ्रॉमप्रेशन = callList.get (0) .getHeaders ();मुखर ("अनुरोध प्राप्त करें हेडर स्वीकार करें और इसके मूल्य शामिल हैं",)शीर्ष लेखफ्रॉस्टेस्ट.गेट ("स्वीकार करें")। इसमें ("टेक्स्ट / html") शामिल हैं;मुखरता ("GET अनुरोध में हेडर प्राधिकरण और उसका मूल्य शामिल है",)शीर्ष लेखफ्रॉस्टेस्ट.स्ट ("प्राधिकरण")। इसमें शामिल हैं ("बियरर 1234567890qwertyuiop"));जोर से बोलें ("GET अनुरोध में हेडर कैश-कंट्रोल और उसका मूल्य शामिल है",शीर्ष लेखफ्रॉस्टेस्ट.गेट ("कैश-कंट्रोल")। ("नो-कैश") शामिल हैं);मुखरता ("प्राप्त अनुरोध में हेडर कनेक्शन और उसका मूल्य शामिल है",)हेडर्सफ्रॉमप्रिसेस्ट.गेट ("कनेक्शन")। इसमें (("जीवित रखें"));मुखरता से बोलें ("GET अनुरोध में हेडर कंटेंट-टाइप और उसका मूल्य शामिल है",हेडर्सफ्रॉमप्रिसेस्ट.गेट ("सामग्री-प्रकार")। इसमें ("एप्लिकेशन / json") शामिल हैं);}पकड़ (अपवाद ई) {e.printStackTrace ();विफल ("अपवाद के कारण परीक्षण विफल: + ई);}आखिरकार {अगर (सर्वर! = null) {server.stop ();}}}
/ *** जूनिट टेस्ट बॉडी और हेडर्स के साथ POST रिक्वेस्ट को रिस्टोर करने के लिए रेस्टक्लाइंट से सत्यापित करता है* कदम:* 1) रेस्टिटो फ्रेमवर्क का उपयोग करके एक स्टब सर्वर बनाएं और दिए गए पोर्ट पर सुनने के लिए इसे कॉन्फ़िगर करें* 2) SendPOSTRequestWithJSONBody (…) RestClient की विधि लागू करें* 3) रेस्टिटो मेल भेजे गए पोस्टिंग अनुरोधों को पकड़ता है, यदि कोई हो।* 4) मान्य करें यदि रेस्टिटो ने दिए गए समापन बिंदु पर किसी भी पोस्ट अनुरोध को कैप्चर किया है* अपेक्षित व्यवहार:* - रेस्टिटो को POST अनुरोध पर कब्जा करना चाहिए था और उसे केवल एक POST अनुरोध पर कब्जा करना चाहिए था।*> कैप्चर किए गए POST अनुरोध का मुख्य भाग प्राप्त करें और JSON मानों को मान्य करें* आखिरकार:* * स्टॉब सर्वर को रेस्टिटो का उपयोग करना शुरू करें।* /सार्वजनिक शून्य परीक्षणStubServer सर्वर = null;प्रयत्न {// यह 'पोर्ट' पर स्टब सर्वर शुरू करेगा और HTTP 202 'ACCEPTED_202' के साथ प्रतिक्रिया देगाTestUtil.restartRestitoServerForPOSTRequests (सर्वर, PORT3, ACCEPTED -202);RestClient.sendPOSTRequestWithJSONBody (PORT3);सूची  callList = TestUtil.waitAndGetCallList (सर्वर, 30);जोर ("POST अनुरोध RestClient से प्राप्त नहीं हुआ है। परीक्षण विफल हुआ।"(callList! = null) && (callList.size () == 1));// REST क्लाइंट से GET अनुरोध के हेडर को सत्यापित करेंस्ट्रिंग अनुरोधबॉडी = callList.get (0) .getPostBody ();JSONObject postRequestJSON = नया JSONObject (requestBody);जोर देनाpostRequestJSON.get ("timeUpdated")।जोर देनाpostRequestJSON.get ("access_token") .String ()।equalsIgnoreCase ("abf8714d-73a3-42ab-9df8-d13fcb92a1d8"));जोर देनाpostRequestJSON.get ("refresh_token") .String ()।equalsIgnoreCase ("d5a5ab08-c200-421d-ad46-2e89c2f566f5"));जोर देनाpostRequestJSON.get ("token_type") .String ()। equalsIgnoreCase ("वाहक"));जोर देनाpostRequestJSON.get ("expires_in")।"postRequestJSON.get ("गुंजाइश") .String ()। equalsIgnoreCase (""));}पकड़ (अपवाद ई) {e.printStackTrace ();विफल ("अपवाद के कारण परीक्षण विफल: + ई);}आखिरकार {अगर (सर्वर! = null) {server.stop ();}}}}

========== जावा कोडे समाप्त ===========

बाकी ग्राहक परीक्षण के लिए रेस्टिटो फ्रेमवर्क का उपयोग करने के लाभ

यहां, रेस्ट क्लाइंट टेस्टिंग के लिए रेस्टिटो फ्रेमवर्क के पेशेवरों / लाभ हैं

  • REST क्लाइंट का परीक्षण करने के लिए हमें वास्तविक REST सर्वर को विकसित करने की आवश्यकता नहीं है।
  • रेस्टिटो एक सर्वर के विभिन्न व्यवहार का मजाक बनाने के लिए मजबूत और विविध उपयोगिताओं और तरीके प्रदान करता है। उदाहरण के लिए: जब सर्वर HTTP 404 त्रुटि या HTTP 503 त्रुटि के साथ प्रतिक्रिया करता है, तो परीक्षण करने के लिए कि REST क्लाइंट कैसे व्यवहार करता है।
  • रेस्टिटो सर्वर को कुछ मिलीसेकंड में स्थापित किया जा सकता है और परीक्षणों के पूरा होने के बाद समाप्त किया जा सकता है।
  • रेस्टिटो सभी प्रकार की HTTP विधि सामग्री का समर्थन करता है जैसे संपीड़ित, गैर-संपीड़ित, एकीकृत, अनुप्रयोग / पाठ, अनुप्रयोग / JSON, आदि।

रेस्ट क्लाइंट टेस्टिंग के लिए रेस्टिटो फ्रेमवर्क का उपयोग करने के नुकसान

यहाँ, रेस्ट क्लाइंट टेस्टिंग के लिए रेस्टिटो फ्रेमवर्क के विपक्ष / कमियां हैं

  • REST क्लाइंट स्रोत को 'लोकलहोस्ट' पर सर्वर मशीन के रूप में विचार करने के लिए ट्वीक किया जाना चाहिए।
  • किसी भी पोर्ट में सर्वर खोलना संघर्ष कर सकता है यदि हम कुछ आमतौर पर इस्तेमाल किए जाने वाले पोर्ट जैसे '8080' या '9443' आदि का उपयोग करते हैं।
  • 9092 या 9099 जैसे बंदरगाहों का उपयोग करने की सलाह दी जाती है, जो आमतौर पर अन्य उपकरणों द्वारा उपयोग नहीं किए जाते हैं।

सारांश:

  • REST का अर्थ "रीकंस्ट्रक्शन स्टेट ट्रांसफर" है जो किसी भी समय दो बिंदुओं के बीच संचार का एक नया मानक तरीका है।
  • REST क्लाइंट एक विधि या उपकरण है जो REST सेवा API को लागू करता है जो किसी भी सिस्टम या सेवा प्रदाता द्वारा संचार के संपर्क में आता है।
  • RestServer मेथड या एक एपीआई जो किसी भी सिस्टम या सेवा प्रदाता द्वारा संचार के लिए उजागर किया जाता है।
  • रेस्टिटो किसी भी तरह के HTTP रिक्वेस्ट को निष्पादित करने में मदद करने के लिए एक हल्का ऐप है
  • HTTP क्लाइंट बनाएं और किसी भी सर्वर एंडपॉइंट पर HTTP GET रिक्वेस्ट भेजने का तरीका
  • एंडपॉइंट के गेटवे पर भेजे गए अनुरोधों को सुनने और पकड़ने के लिए एक रेस्टिटो सर्वर शुरू करें।
  • स्थानीयहोस्टे में समापन बिंदु 'गेटवे' पर भेजे गए अनुरोधों को सुनने और पकड़ने के लिए एक रेस्टिटो सर्वर शुरू करें
  • यहां, हमने केवल REST क्लाइंट के स्वचालन परीक्षण के लिए उदाहरणों को लागू किया है।
  • REST क्लाइंट का परीक्षण करने के लिए हमें वास्तविक REST सर्वर को विकसित करने की आवश्यकता नहीं है।
  • REST क्लाइंट स्रोत को 'लोकलहोस्ट' पर सर्वर मशीन के रूप में विचार करने के लिए ट्वीक किया जाना चाहिए।

यह लेख चंद्रशेखर मुत्तिनेनी द्वारा योगदान दिया गया है