我喜欢通过我的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);
调用webservice
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"]}"}
但无法得到答案。 我不知道是什么原因。
我不知道我方或服务器端的任何问题。
答案 0 :(得分:0)
您尚未将实际发送请求的代码发布到您的网络服务中,因此很难为您提供帮助。
您应该做的第一件事就是确定问题出在客户端(应用程序)还是服务器上。您可以通过记录发送消息时获得的响应来执行此操作 - 听起来好像您没有得到响应,在这种情况下,您可能最好检查服务器日志以查看请求是否到达您的服务器。您可能会发现使用代理在离开应用时实际查看网络流量非常有用。
答案 1 :(得分:0)
看起来你有额外的报价。我想你的意思是: {“n”:{“key”:[“4e78b7f7483bc8fe83ed2bf9”,“4de248a21520b8ceaabd9197”,“4f0a502be4b0dd89303e6bde”,“4f2a79a1e4b0b052a3f37633”,“500ebf52e4b0edbb8dbc7e9c”,“4d63a047a45b5481c872032d”]}}