0

iPhone アプリから json Web サービスを呼び出すのが好きです。

次のように配列を渡そうとします:

NSArray *keys = [NSArray arrayWithObjects:@"key",nil];
NSArray *objects = [NSArray arrayWithObjects:venueId,nil];
NSDictionary *jsonDictionary = [NSDictionary dictionaryWithObjects:objects forKeys:keys];
NSString* jsonString = [jsonDictionary JSONRepresentation];


NSLog(@"%@",jsonString);

Web サービスへの呼び出し

SBJSON *json = [SBJSON new];
    json.humanReadable = YES;
    responseData = [[NSMutableData data] retain];
 NSString *service = @"/DerializeDataTable";
NSString *requestString = [NSString stringWithFormat:@"{\"n\":\"%@\"}",jsonString];

    NSLog(@"request string:%@",requestString);

要求される文字列

{"n":"{"key":["4e78b7f7483bc8fe83ed2bf9","4de248a21520b8ceaabd9197","4f0d502be4b0dd89303e6bde","4f2a79a1e4b0b052a3f37633","500ebf52e4b0edbb8dbc7e9c","4d63a047a45b5481c872032d"]}"}

しかし、応答を得ることができません。 何が原因かわかりません。

私は自分の側またはサーバー側の問題を知りません。

4

2 に答える 2

0

そこに余分な引用符があるようです。I think you mean: {"n":{"key": ["4e78b7f7483bc8fe83ed2bf9","4de248a21520b8ceaabd9197","4f0d502be4b0dd89303e6bde","4f2a79a1e4b0b052a3f37633","500ebf52e4b0edbb8dbc7e9c","4d63a047a45b5481c872032d"]}}

于 2013-05-15T13:36:55.097 に答える
0

実際に要求を Web サービスに送信するコードを投稿していないため、役に立ちません。

最初にすべきことは、問題がクライアント (アプリ) にあるのかサーバーにあるのかを特定することです。これは、メッセージを送信したときに受け取った応答をログに記録することで実行できます。応答がない場合は、サーバー ログを調べて、要求がサーバーに到達したかどうかを確認することをお勧めします。プロキシを使用して、ネットワーク トラフィックがアプリから出るときに実際にネットワーク トラフィックを確認すると便利な場合があります。

于 2013-05-15T10:15:34.740 に答える