Sample code for 30+ languages & platforms
Objective-C

SOAP demoemision.thefactoryhka.com.pa DescargaPDF

See more REST Misc Examples

Make a SOAP call to http://demoemision.thefactoryhka.com.pa/ws/obj/v1.0/Service.svc with SOAPAction http://tempuri.org/IService/DescargaPDF

Chilkat Objective-C Downloads

Objective-C
#import <CkoHttp.h>
#import <CkoXml.h>
#import <NSString.h>
#import <CkoHttpResponse.h>

BOOL success = NO;

//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

//  --------------------------------------------------------------------------------
//  Also see Chilkat's Online WSDL Code Generator
//  to generate code and SOAP Request and Response XML for each operation in a WSDL.
//  --------------------------------------------------------------------------------

CkoHttp *http = [[CkoHttp alloc] init];

//  First build this SOAP XML request body:
//  Use this online tool to generate the code from sample XML: 
//  Generate Code to Create XML

//  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:ser="http://schemas.datacontract.org/2004/07/Services.Model">
//     <soapenv:Header/>
//     <soapenv:Body>
//        <tem:DescargaPDF>
//           <tem:tokenEmpresa>?</tem:tokenEmpresa>
//           <tem:tokenPassword>?</tem:tokenPassword>
//           <tem:datosDocumento>
//              <ser:codigoSucursalEmisor>?</ser:codigoSucursalEmisor>
//               <ser:numeroDocumentoFiscal>?</ser:numeroDocumentoFiscal>
//              <ser:puntoFacturacionFiscal>?</ser:puntoFacturacionFiscal>
//              <ser:serialDispositivo>?</ser:serialDispositivo>
//              <ser:tipoDocumento>?</ser:tipoDocumento>
//              <ser:tipoEmision>?</ser:tipoEmision>
//           </tem:datosDocumento>
//        </tem:DescargaPDF>
//     </soapenv:Body>
//  </soapenv:Envelope>

CkoXml *xml = [[CkoXml alloc] init];
xml.Tag = @"soapenv:Envelope";
[xml AddAttribute: @"xmlns:soapenv" value: @"http://schemas.xmlsoap.org/soap/envelope/"];
[xml AddAttribute: @"xmlns:tem" value: @"http://tempuri.org/"];
[xml AddAttribute: @"xmlns:ser" value: @"http://schemas.datacontract.org/2004/07/Services.Model"];
[xml UpdateChildContent: @"soapenv:Header" value: @""];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:tokenEmpresa" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:tokenPassword" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:codigoSucursalEmisor" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:numeroDocumentoFiscal" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:puntoFacturacionFiscal" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:serialDispositivo" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:tipoDocumento" value: @"?"];
[xml UpdateChildContent: @"soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:tipoEmision" value: @"?"];

NSString *strXml = [xml GetXml];

[http SetRequestHeader: @"SOAPAction" value: @"http://tempuri.org/IService/DescargaPDF"];
[http SetRequestHeader: @"Content-Type" value: @"text/xml; charset=utf-8"];

NSString *endPoint = @"http://demoemision.thefactoryhka.com.pa/ws/obj/v1.0/Service.svc";

CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpStr: @"POST" url: endPoint bodyStr: strXml charset: @"utf-8" contentType: @"application/xml" response: resp];
if (success == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

int statusCode = [resp.StatusCode intValue];
if (statusCode != 200) {
    NSLog(@"%@%d",@"Non-success status code: ",statusCode);
    NSLog(@"%@%@",@"Response header: ",resp.Header);
    NSLog(@"%@%@",@"Response body: ",resp.BodyStr);
    NSLog(@"%@",@"Unsuccessful.");
    return;
}

CkoXml *xmlResp = [[CkoXml alloc] init];
[xmlResp LoadXml: resp.BodyStr];

NSLog(@"%@",[xmlResp GetXml]);

//  Use this online tool to generate parsing code from sample XML: 
//  Generate Parsing Code from XML