jeudi 16 juin 2016

how to send xml string as a parameter in the request in AFNetworking


this is my request url :

  NSString *checkingbaseUrl = [NSString stringWithFormat:@"http://mysonapi.ascentur.au/auMobile.asmx/FlightBooking?Authkey=%@&Reqxml=%@&infovia=%@&totalpax=%@&totalfare=%@&flightsegmentcount=%@&from=%@&destination=%@&departuredate=%@&returndate=%@&airlinecode=%@&cabinclass=%@&cabinclasses=%@",authkey,newrequstString,infovia,totalPax,totalfare,flightsegmentcount,from,destination,departuredate,returndate,airline,cabinclass,cabinClassess];

and this is how I use afnetworking

  AFHTTPSessionManager *bookingmanager = [AFHTTPSessionManager manager];
    [bookingmanager GET:basedUrl parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject)
    {
        NSString *responseS = (NSString *)responseObject;
        NSLog(@"resoponseS : %@", responseS);


    }
    failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        NSLog(@"anurdh_caldera :%@", error.localizedDescription);
    }];

this is the xml string that I want to pass through the xml as a parameter.

NSString *requestXml = [NSString stringWithFormat:@"<BPC9>"
                                "<MSG_VERSION>9</MSG_VERSION>"
                                "<VARIABLE_COUNT>0002</VARIABLE_COUNT>"
                                "<SEATS>2</SEATS>"
                                "<PASSENGER_DATA>"
                                "<NAME_POSITION>1</NAME_POSITION>"
                                "<LAST_FIRST_MIDDLE>Romeo/Jayceon</LAST_FIRST_MIDDLE>"
                                "<TITLE>Mr</TITLE>"
                                "<DOB>900605</DOB>"
                                "<TYPE>ADT</TYPE>"
                                "</PASSENGER_DATA>"
                                "<PASSENGER_DATA>"
                                "<NAME_POSITION>2</NAME_POSITION>"
                                "<LAST_FIRST_MIDDLE>Romeo/Zion</LAST_FIRST_MIDDLE>"
                                "<TITLE>Mr</TITLE>"
                                "<DOB>950712</DOB>"
                                "<TYPE>ADT</TYPE>"
                                "</PASSENGER_DATA>"
                                "<PNR_DATA>"
                                "<PHONE_FIELDS>"
                                "<PHONE_FIELD>mobile api travel</PHONE_FIELD>"
                                "</PHONE_FIELDS>"
                                "<RECEIVED_FROM>traavel center mobile</RECEIVED_FROM>"
                                "<CUST_REF_NUM>166201683652250</CUST_REF_NUM>"
                                "<FOP>CA</FOP>"
                                "</PNR_DATA>"
                                "<QUEUE_DATA>"
                                "<QUEUE_NUMBER>0</QUEUE_NUMBER>"
                                "</QUEUE_DATA>"
                                "<END_OPTION>E</END_OPTION>"
                                "<PRICING_DISPLAY_OPTION>1</PRICING_DISPLAY_OPTION>"
                                "<PRICING_COMMAND>4P*FSR</PRICING_COMMAND>"
                                "<PRICING_COMMAND/>"
                                "<PRICING_COMMAND/>"
                                "<PRICING_COMMAND>#FSR</PRICING_COMMAND>"
                                "<TICKET_OPTION>7T/</TICKET_OPTION>"
                                "<LEG_COUNT>1</LEG_COUNT>"
                                "<CK_TIME_PRICE_DIF>T</CK_TIME_PRICE_DIF>"
                                "<SEGMENT_INFO>"
                                "<LEG_NUM>1</LEG_NUM>"
                                "<SEGMENT_INDICATOR>P</SEGMENT_INDICATOR>"
                                "<AVAIL_LOCATION>N</AVAIL_LOCATION>"
                                "<AVAIL_INFO>"
                                "<AVAIL_DEP_AIRPORT>"
                                "<CITY_CODE>LHR</CITY_CODE>"
                                "</AVAIL_DEP_AIRPORT>"
                                "<AVAIL_AIRLINE>AF</AVAIL_AIRLINE>"
                                "<AVAIL_DEP_CLASS>X</AVAIL_DEP_CLASS>"
                                "<AVAIL_ARRIVAL_AIRPORT>"
                                "<CITY_CODE>CDG</CITY_CODE>"
                                "</AVAIL_ARRIVAL_AIRPORT>"
                                "<AVAIL_DEP_DAY>17</AVAIL_DEP_DAY>"
                                "<AVAIL_DEP_MONTH>JAN</AVAIL_DEP_MONTH>"
                                "<AVAIL_DEP_TIME>2010</AVAIL_DEP_TIME>"
                                "<AVAIL_ARRIVAL_TIME>2220</AVAIL_ARRIVAL_TIME>"
                                "</AVAIL_INFO>"
                                "<AIRLINE_CODE>AF</AIRLINE_CODE>"
                                "<FLIGHT_NUM>1181</FLIGHT_NUM>"
                                "<DEP_CLASS>X</DEP_CLASS>"
                                "<DEP_DATE>"
                                "<DEP_DAY>17</DEP_DAY>"
                                "<DEP_MONTH>JAN</DEP_MONTH>"
                                "</DEP_DATE>"
                                "<DEP_TIME>"
                                "<DEP_HOUR>20</DEP_HOUR>"
                                "<DEP_MIN>10</DEP_MIN>"
                                "</DEP_TIME>"
                                "<DEP_AIRPORT>LHR</DEP_AIRPORT>"
                                "<ARRIVAL_DATE>"
                                "<ARRIV_DAY>17</ARRIV_DAY>"
                                "<ARRIV_MONTH>JAN</ARRIV_MONTH>"
                                "</ARRIVAL_DATE>"
                                "<ARRIVAL_TIME>"
                                "<ARRIV_HOUR>22</ARRIV_HOUR>"
                                "<ARRIV_MIN>20</ARRIV_MIN>"
                                "</ARRIVAL_TIME>"
                                "<ARRIV_AIRPORT>CDG</ARRIV_AIRPORT>"
                                "</SEGMENT_INFO>"
                                "<SEGMENT_INFO>"
                                "<LEG_NUM>1</LEG_NUM>"
                                "<SEGMENT_INDICATOR>P</SEGMENT_INDICATOR>"
                                "<AVAIL_LOCATION>N</AVAIL_LOCATION>"
                                "<AVAIL_INFO>"
                                "<AVAIL_DEP_AIRPORT>"
                                "<CITY_CODE>CDG</CITY_CODE>"
                                "</AVAIL_DEP_AIRPORT>"
                                "<AVAIL_AIRLINE>AF</AVAIL_AIRLINE>"
                                "<AVAIL_DEP_CLASS>X</AVAIL_DEP_CLASS>"
                                "<AVAIL_ARRIVAL_AIRPORT>"
                                "<CITY_CODE>LHR</CITY_CODE>"
                                "</AVAIL_ARRIVAL_AIRPORT>"
                                "<AVAIL_DEP_DAY>31</AVAIL_DEP_DAY>"
                                "<AVAIL_DEP_MONTH>JAN</AVAIL_DEP_MONTH>"
                                "<AVAIL_DEP_TIME>1805</AVAIL_DEP_TIME>"
                                "<AVAIL_ARRIVAL_TIME>1820</AVAIL_ARRIVAL_TIME>"
                                "</AVAIL_INFO>"
                                "<AIRLINE_CODE>AF</AIRLINE_CODE>"
                                "<FLIGHT_NUM>1080</FLIGHT_NUM>"
                                "<DEP_CLASS>X</DEP_CLASS>"
                                "<DEP_DATE>"
                                "<DEP_DAY>31</DEP_DAY>"
                                "<DEP_MONTH>JAN</DEP_MONTH>"
                                "</DEP_DATE>"
                                "<DEP_TIME>"
                                "<DEP_HOUR>18</DEP_HOUR>"
                                "<DEP_MIN>05</DEP_MIN>"
                                "</DEP_TIME>"
                                "<DEP_AIRPORT>CDG</DEP_AIRPORT>"
                                "<ARRIVAL_DATE>"
                                "<ARRIV_DAY>31</ARRIV_DAY>"
                                "<ARRIV_MONTH>JAN</ARRIV_MONTH>"
                                "</ARRIVAL_DATE>"
                                "<ARRIVAL_TIME>"
                                "<ARRIV_HOUR>18</ARRIV_HOUR>"
                                "<ARRIV_MIN>20</ARRIV_MIN>"
                                "</ARRIVAL_TIME>"
                                "<ARRIV_AIRPORT>LHR</ARRIV_AIRPORT>"
                                "</SEGMENT_INFO>"
                                "</BPC9>"];

I tried/test by entering the url in the browser. but it says some parameters are missing.(but is was there).then I tried to clean the url like below .

NSString *basedUrl = [checkingbaseUrl stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]];

at that time it returns 404 error.

I want to know is it possible to pass this type of xml string to as a parameter through the url and possible with AFNetworking. if it is possible how can I do that.

if it is not, what are the alternative ways to do.

NOTE : web service is created using soap and convert xml result into json and return the json as response

hope your help with this.cheers !!!!


Aucun commentaire:

Enregistrer un commentaire