繁体   English   中英

从iPhone读取2 JSON请求

[英]Read 2 JSON Request from iPhone

在php端,我编写了以下代码:

 ......
 sendResponse(200, json_encode($result1));
 sendResponse(200, json_encode($result2));

现在在Xcode端,我编写了以下代码:

- (void)requestFinished:(ASIHTTPRequest *)request
{    
    if (request.responseStatusCode == 200) {
    NSString *responseString = [request responseString];
    NSDictionary *responseDict = [responseString JSONValue];
    NSArray *carsType = [responseDict allValues];
    if (carsType != Nil) {
        self.carsTypeArray = carsType;
        [carsTypeTableView reloadData];


    }
 }

问题是,如果我注释其中的php代码之一,则obj-c代码可以100%工作。 但我需要知道如何阅读2 JSON响应。

任何想法请。

从根本上讲,HTTP要求每个请求一个响应。 您不能连续发送两个hTTP响应消息,并且希望客户端理解。

在一个HTTP响应中发送两段JSON的最简单方法是将它们包装在JSON数组中,例如

[ { "foo" : "bar" }, { "foo" : "baz" }]

我想象在PHP中,如果将result1和result2粘贴到PHP数组中并对其进行JSON编码,那么您将获得正确的JSON字符串。

在iPhone上,将-JSONValue发送到响应时,将返回一个包含两个JSON对象的NSArray

只要这样做:

$result[] = $result1;
$result[] = $result2;
sendResponse(200, json_encode($result));

[responseDict objectAtIndex:0]将是$result1

[responseDict objectAtIndex:1]将是$result2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM