SubmitTo Method
Post current parameters to the URL specified by the 'URL' parameter.
Object Oriented Interface
public function doSubmitTo($url);
Procedural Interface
inship_shiprequest_do_submitto($res, $url);
Remarks
A post request is sent to the URL with the specified parameters and values. The response is given via the TransferredData property.
Following are examples of using the class to create a request for different services. Note that these examples show how to implement functionality existing in other classs. To use any of the functionality demonstrated here, you may use the corresponding class instead.
FedEx
Component.PostData = @"<?xml version="1.0" encoding="UTF-8" ?>" + @"<ProcessShipmentRequest xmlns="http://fedex.com/ws/ship/v9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">" + "<WebAuthenticationDetail>" + "<UserCredential>" + "<Key>MyKey</Key>" + "<Password>MyPassword</Password>" + "</UserCredential>" + "</WebAuthenticationDetail>" + "<ClientDetail>" + "<AccountNumber>000000000</AccountNumber>" + "<MeterNumber>000000000</MeterNumber>" + "<Localization>" + "<LanguageCode>en</LanguageCode>" + "<LocaleCode>en</LocaleCode>" + "</Localization>" + "</ClientDetail>" + ... Component.SubmitTo("https://gatewaybeta.fedex.com:443/xml"); Component.XPath = "/ProcessShipmentReply/Notifications/Severity"; if(Component.XText == "SUCCESS") //The request was successful
UPS
Component.PostData = @"<?xml version="1.0"?>" + @"<AccessRequest xml:lang="en-US">" + "<AccessLicenseNumber>YourAccessLicenseNumber</AccessLicenseNumber>" + "<UserId>userid</UserId>" + "<Password>password</Password>" + "</AccessRequest>" + @"<?xml version=\"1.0\"?>" + @"<VoidShipmentRequest xml:lang=\"en-US\">" + ... Component.SubmitTo("https://wwwcie.ups.com/ups.app/xml/Void"); Component.XPath = "/VoidShipmentResponse/Response/ResponseStatusCode"; if(Component.XText == "1") //The request was successful
USPS With Endicia
Component.PostData = "postageRateRequestXML=<PostageRateRequest>" + "<RequesterID>test</RequesterID>" + "<CertifiedIntermediary>" + "<AccountID>123456</AccountID>" + "<PassPhrase>test</PassPhrase>" + "</CertifiedIntermediary>" + "<MailClass>ExpressMailInternational</MailClass>" + "<WeightOz>1</WeightOz>" + "<MailpieceShape>FlatRateEnvelope</MailpieceShape>" + "<AutomationRate>FALSE</AutomationRate>" + "<Machinable>TRUE</Machinable>" + "<Services>" + "<InsuredMail>OFF</InsuredMail>" + "</Services>" + "<FromPostalCode>10022</FromPostalCode>" + "<ToCountry>Algeria</ToCountry>" + "</PostageRateRequest>"; Component.ContentType = "application/x-www-form-urlencoded"; Component.SubmitTo("https://www.envmgr.com/LabelService/EwsLabelService.asmx/CalculatePostageRateXML"); Component.XPath = "/PostageRateResponse/Status"; if(Component.XText == "0") //The request was successful
USPS
Component.AddParameter("XML",@"<CarrierPickupCancelRequest USERID="User" PASSWORD="Pass"><FirmName>ABC Corp.</FirmName>" + "<SuiteOrApt>Suite 777</SuiteOrApt>" + "<Address2>1390 Market Street</Address2>" + "<Urbanization></Urbanization>" + "<City>Houston</City>" + "<State>TX</State>" + "<ZIP5>77058</ZIP5>" + "<ZIP4>1234</ZIP4>" + "<ConfirmationNumber>WTC123456789</ConfirmationNumber>" + "</CarrierPickupCancelRequest>"); Component.AddParameter("API", "CarrierPickupCancel"); Component.ContentType = "application/x-www-form-urlencoded"; Component.SubmitTo("https://secure.shippingapis.com/ShippingAPITest.dll"); Component.XPath = "/CarrierPickupCancelResponse/Status"; Console.WriteLine(Component.XText);