2011-07-07 14 views
0

soap request/response appを使っています。私はログインページを持っています。それはユーザーIDとパスワードを持っています。これは私の石鹸のメッセージです。ユーザIDとパスワードがユーザのために差分であるようsoapメッセージの作成方法

      NSString *soapMessage = [NSString stringWithFormat: @"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" 
         "<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n" 
         "<soap:Body>\n" 
         "<SignOn xmlns=\"http://10.12.50.99/CUTechWebservices/CuTechWebService.asmx\">\n" 

         "<DeviceID>4A6B740C-0B5B-5F8C-8694-1EC0196C1C67</DeviceID>\n" 
         "<UserID>string</UserID>\n" 
         "<CrID>6</CrID>\n" 
         "<UserPin>string</UserPin>\n" 
         "</SignOn>\n" 
         "</soap:Body>\n" 
         "</soap:Envelope>\n"];  

は、Iは、SOAPメッセージのテキストフィールド(ユーザIDおよびパスワード)の値を渡したいです。

これを行う方法? ありがとうございます。

答えて

0

OK以下はいくつかの手順です。私は正確なコードを使用するかどうかはわかりません。しかし、必要に応じて変更してください。 BuildDataRequestはこのようにする必要があり

NSMutableURLRequest *request = [WebAPIRequest buildSOAPRequest:@"WebserviceURL" withPostData:strRequest WebMethod:@"YourWebMethodHereForExample-ValidateUSer"]; 
Connection *con = [[[Connection alloc]initWithClass:@"getClientResult" withRoot:@"soap:Body" withDelegate:delegate withTag:tag]autorelease]; 
[[[NSURLConnection alloc]initWithRequest:request delegate:con] autorelease]; 

:リクエストを呼び出すための

はこのような何かを行います。

+(NSMutableURLRequest *)buildSOAPRequest:(NSString *)serviceUrl withPostData:(NSString *)dataString WebMethod:(NSString*)strMethod{ 

NSURL *url = [NSURL URLWithString:serviceUrl]; 
NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url]; 
NSString *msgLength = [NSString stringWithFormat:@"%d", [dataString length]]; 
[theRequest addValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"]; 
if (isRegion==YES) 
{ 
    isRegion = NO; 
    [theRequest addValue:[NSString stringWithFormat:@"%@%@",NSLocalizedString(@"SOAP Action1",nil),strMethod] forHTTPHeaderField:@"SOAPAction"]; 

}else 
{ 
    [theRequest addValue:[NSString stringWithFormat:@"%@%@",NSLocalizedString(@"SOAP Action",nil),strMethod] forHTTPHeaderField:@"SOAPAction"]; 
} 

[theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"]; 
[theRequest setHTTPMethod:@"POST"]; 
[theRequest setHTTPBody: [dataString dataUsingEncoding:NSUTF8StringEncoding]]; 
NSLog(@"%@",dataString); 

return theRequest; 
} 

このヘルプが必要です。

+0

しかし、私はどのようにこのstrRequestオブジェクトをsoapMessageに配置しますか。私はqueを編集しました。それをもう一度見てください。 –

+0

私は自分の答えを変更しました。それを見てください。助けて欲しい。 – Deeps