Public classrestclient {Private stringBaseUri; PublicRestclient (stringBaseUri) { This. BaseUri =BaseUri; } #regionDelete mode Public stringDelete (stringDatastringURI) { returnCommonhttprequest (data, URI,"DELETE"); } Public stringDelete (stringURI) { //Web Access Objects stringserviceurl =string. Format ("{0}/{1}", This. BaseUri, URI); HttpWebRequest Myrequest=(HttpWebRequest) webrequest.create (serviceurl); Myrequest.method="DELETE"; //Get interface return valueHttpWebResponse Myresponse =(HttpWebResponse) myrequest.getresponse (); StreamReader Reader=NewStreamReader (Myresponse.getresponsestream (), Encoding.UTF8); //string returnxml = Httputility.urldecode (reader. ReadToEnd ()); stringReturnxml =Reader. ReadToEnd (); Reader. Close (); Myresponse.close (); returnReturnxml; } #endregion #regionPut mode Public stringPut (stringDatastringURI) { returnCommonhttprequest (data, URI,"PUT"); } #endregion #regionPost Mode implementation Public stringPost (stringDatastringURI) { returnCommonhttprequest (Data,uri,"POST"); } Public stringCommonhttprequest (stringDatastringUristringtype) { //Web Access object, constructing the requested URL address stringserviceurl =string. Format ("{0}/{1}", This. BaseUri, URI); //object that constructs an HTTP requestHttpWebRequest Myrequest =(HttpWebRequest) webrequest.create (serviceurl); //turn into a network stream byte[] buf = System.Text.Encoding.GetEncoding ("UTF-8"). GetBytes (data); //SetMyrequest.method =type; Myrequest.contentlength=buf. Length; Myrequest.contenttype="Application/json"; Myrequest.maximumautomaticredirections=1; Myrequest.allowautoredirect=true; //Send RequestStream newstream =Myrequest.getrequeststream (); Newstream.write (BUF,0, buf. Length); Newstream.close (); //Get interface return valueHttpWebResponse Myresponse =(HttpWebResponse) myrequest.getresponse (); StreamReader Reader=NewStreamReader (Myresponse.getresponsestream (), Encoding.UTF8); stringReturnxml =Reader. ReadToEnd (); Reader. Close (); Myresponse.close (); returnReturnxml; } #endregion #regionGet mode implementation Public stringGet (stringURI) { //Web Access Objects stringserviceurl =string. Format ("{0}/{1}", This. BaseUri, URI); //constructs an object for a Web requestHttpWebRequest Myrequest =(HttpWebRequest) webrequest.create (serviceurl); //Get interface return value//gets the content of the response for the Web requestHttpWebResponse Myresponse =(HttpWebResponse) myrequest.getresponse (); //construct a StreamReader with a response streamStreamReader reader =NewStreamReader (Myresponse.getresponsestream (), Encoding.UTF8); //string returnxml = Httputility.urldecode (reader. ReadToEnd ()); stringReturnxml =Reader. ReadToEnd (); Reader. Close (); Myresponse.close (); returnReturnxml; } #endregion }
Restclient client sends HTTP request code