2013-05-30 69 views
-1

我正在使用基於iPhone的JSON Web服務的應用程序。我需要將輸入參數作爲數組傳遞給JSON Web Service,我該怎麼做?如何將數組作爲參數發送給iOS中的json服務

數組包含12個元素。 在這裏提供樣本服務... 此服務的輸入參數: dev_id = 1; 的dev_name = Josh和數組項(projectslist,companyidentifier)

http://www.jyoshna.com/api/developer.php?dev_id=1&dev_name=josh&(Here我需要傳遞數組元素)

可以任何幫助我們如何傳遞數組作爲輸入參數提供給JSON服務?

+0

這個sgtring而aStr是重複http://stackoverflow.com/questions/10290767/converting- NSArray的-JSON-NSData的-PHP的服務器JSON-表示 – Dev2rights

回答

1

首先,你必須數組轉換爲JSON字符串

NSString *requestString=[jsonParser stringWithObject:array]; 

字符串轉換爲數據

NSData *data=[requestString dataUsingEncoding:NSUTF8StringEncoding]; 

組數據作爲請求體

[request setHTTPBody:data]; 
0

你必須連載數組並通過作爲一個argume NT。不要忘了反序列化在服務器端

0

您將需要創建一個NSMutabelDictionary數組,然後JSON編碼它,然後您可以將結果字符串發送到您的web服務,但您選擇。我傾向於建立一個POST請求,並將其發送這樣

NSMutableDictionary *jsonDict = [[NSMutableDictionary alloc] init]; 
NSMutableDictionary *tagData = [[NSMutableDictionary alloc] init]; 
for(int i = 0; i < array.count; i++) 
{ 
    NSString *keyString = [NSString stringWithFormat:@"key%i", i]; 
    [tagData setObject:[array objectAtIndex:i] forKey:keyString]; 
} 

[jsonDict setObject:tagData forKey:@"entries"]; 

NSData* data = [NSJSONSerialization dataWithJSONObject:jsonDict 
               options:NSJSONWritingPrettyPrinted error:&error]; 

NSString* aStr; 
aStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; 

這是你需要發送

相關問題