2009-11-27 94 views
2

我試圖從Iphone客戶端將數據發送到服務器。它適用於大多數值,但當發送像「IPhone + Cocoa」這樣的字符串時,服務器將該字符串顯示爲「IPhone Cocoa」。我試圖谷歌它,但沒有成功,有沒有任何爲什麼這樣做。使用Post方法將iPhone中的XML文件發送到服務器

這裏是我的代碼

-(void)sendRequest:(NSString *)aRequest 
{ 
    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:kURLRequest]]; 
    NSString *httpBody = [NSString stringWithFormat:@"%@=%@",[requestString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding],[aRequest stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 
    NSData *aData = [httpBody dataUsingEncoding:NSUTF8StringEncoding]; 
    [request setHTTPBody:aData]; 
    [request setHTTPMethod:@"POST"]; 
    self.feedURLConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; 
} 

誰能幫助我?

回答

0

您的requestString和aRequest做到這一點,但不會與您一起加入格式化..之後

嘗試

httpBody = [httpBody stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 

NSData *aData = [httpBody dataUsingEncoding:NSUTF8StringEncoding]; 
+0

我嘗試過,但沒有成功。但是,當我通過瀏覽器傳遞相同的請求到服務器它的作品。 – Ansh 2009-11-27 11:04:34

+0

ok..crude idea .. abt如何擁有%3D而不是'='? – prakash 2009-11-27 12:20:10

+0

它的崩潰......我想是因爲它把%3D當作格式說明符來處理,但我使用了反斜槓。但是這也沒有奏效。任何想法..........如何做...感謝回覆 – Ansh 2009-11-27 13:43:40

相關問題