0

オブジェクトの配列でWebサービスにアクセスしています。ただし、サーバー側では、すべてのフィールドに対してnull値しか取得していません。

クライアント側のコードは次のとおりです。

        NSURL *url = [NSURL URLWithString:urlString];
        NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:url];
        NSURLConnection *connection= [[NSURLConnection alloc] initWithRequest:urlRequest
                                                                     delegate:self];
        //************DATA formation
        NSMutableDictionary *jsonDict = [[NSMutableDictionary alloc]init];
        NSMutableDictionary *jsonDict1 = [[NSMutableDictionary alloc]init];

        [jsonDict setObject:@"3" forKey:@"rollNo"];
        [jsonDict setObject:@"Ezhil" forKey:@"FirstName"];
        [jsonDict setObject:@"Arasu" forKey:@"LastName"];

        [jsonDict1 setObject:@"4" forKey:@"rollNo"];
        [jsonDict1 setObject:@"XYZ" forKey:@"FirstName"];
        [jsonDict1 setObject:@"ABC" forKey:@"LastName"];

        NSArray *jsonArray=[[NSArray alloc]initWithObjects:jsonDict,jsonDict1, nil];

         //Converting to JSON string.
         SBJsonWriter *writer = [[SBJsonWriter alloc] init];
         NSString *jsonString = [writer stringWithObject:jsonArray];

         NSLog(@"JSON String : %@",jsonString);

        //************Setting DATA in URL
        [urlRequest setHTTPMethod:@"POST"];
        [urlRequest setValue:@"application/json" forHTTPHeaderField:@"Accept"];
        [urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
        [urlRequest setHTTPBody:[jsonString dataUsingEncoding:NSUTF8StringEncoding]];
        [connection start]; 

        // Code for response....

私は私が間違っていたのか分かりません。誰かがこの問題について私を助けることができますか?前もって感謝します。

4

2 に答える 2

0

ありがとう..アプリケーションは変更なしで正常に動作しています。問題はサーバー側にあります。しかし、外部フレームワークを使用する代わりに、あなたの提案に従うことができると思います。

どちらの場合も、次のような json オブジェクトを取得しています。

JSON String : 
 [{"rollNo":"3","FirstName":"Ezhil","LastName":"Arasu"},
  {"rollNo":"4","FirstName":"XYZ","LastName":"ABC"}]
于 2013-01-09T04:56:27.153 に答える
0

私はSBJsonのものを廃棄し、ネイティブコントロールを使用します...

あなたが行っているのと同じようにすべてを行いますが、SBJsonWriterのものを削除し、これを行ってリクエストの本文を設定します...

[urlRequest setHTTPBody:[NSJSONSerialization dataWithJSONObject:jsonArray options:NSJSONWritingPrettyPrinted error:&error]];

それはうまくいくはずです。

于 2013-01-08T12:01:18.770 に答える