0

现在我正在尝试通过 PHP 将 jpeg 文件发布到 MySQL 并从 MySQL 获取到 iOS。

在 GET 方法中,我使用 json_encode() 在 PHP 脚本上将 jpeg(作为 NSData)和一些相关数据(例如标题、时间戳)编码为 JSON。

    {"caption":"(captiondata)","img":"(imagedata)","timestamp":"(timestampdata)"}

然后我将数据设置为数组,例如,

    [{"caption":"(captiondata)","img":"(imagedata)","timestamp":"(timestampdata)"},
     {"caption":"(captiondata)","img":"(imagedata)","timestamp":"(timestampdata)"},
     .......,
     {"caption":"(captiondata)","img":"(imagedata)","timestamp":"(timestampdata)"}]

我相信我可以通过 PHP 上的 echo (json_encode ()) 和 iOS 上的 SBJsonParser 解析并获取此 JSON,但没有任何内容返回到我的应用程序。这是我在 iOS 中的代码。(我也使用 Three20 的 TTURLRequest)

    TTURLRequest* request = [TTURLRequest requestWithURL:url delegate:self];
    request.cachePolicy = cachePolicy;
    TTURLJSONResponse* response = [[[TTURLJSONResponse alloc] init] autorelease];
    request.response = response;
    [request send];

    - (void)requestDidFinishLoad:(TTURLRequest*)request {
        TTURLJSONResponse* response = request.response;
        NSLog(@"%@",response);
    }
4

1 回答 1

0

你能打印所有的日志requestDidFinishLoad:吗?

响应是rootObjectTTURLJSONResponse

- (void)requestDidFinishLoad:(TTURLRequest*)request {

    TTURLJSONResponse *response = request.response;
    NSDictionary *dict = response.rootObject;
    NSLog(@"dict : %@",dict);

}

在你的情况下,

- (void)requestDidFinishLoad:(TTURLRequest*)request {
    TTURLJSONResponse* response = request.response;
    NSLog(@"%@",response);
}

响应可能看起来像<TTURLJSONResponse: 0x125398c0>

如果仍然没有返回,您可以检查requestDidFinishLoad:被调用而不是缓存问题。

于 2012-06-05T10:32:27.737 回答