ASIHTTPRequest给我带来麻烦

时间:2011-10-03 05:29:13

标签: php iphone nsurlconnection asihttprequest exc-bad-access

我有一个代码将POST数据发送到PHP网站。代码:

request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://www.example.com/Testing/Testing.php"]];
    [request setPostValue:targettype forKey:@"targettype"];
    [request setPostValue:targetmethod forKey:@"targetmethod"];
    [request setPostValue:sourceurl forKey:@"sourceurl"];
    [request setPostValue:filepath forKey:@"filepath"];

    [request setDelegate:self];
    [request startAsynchronous];

这很完美。发送此数据并且PHP脚本输出一些数据后,脚本会创建一个.txt文件。一旦iPhone读取.txt文件的内容,我想将ASIHTTPRequest运行到另一个应该删除此.txt文件的PHP脚本。从PHP端开始,一切似乎都在起作用,iPhone正在完美地接收数据。但是,一旦收到数据,我有一个if ... then语句检查数据,然后一旦数据存在,我想调用ASIHTTPRequest来删除.txt。这是我用于将数据发布到新PHP位置的代码:

{...
    imageView.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString: string]]];
            [self deletefile];
   }

-(void) deletefile {
        request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://www.prajoth.com/Testing/Testing.php"]];
        [request setPostValue:@"hey" forKey:@"targettype"];
        [request setPostValue:@"hey" forKey:@"targetmethod"];
        [request setPostValue:@"hey" forKey:@"sourceurl"];
        [request setPostValue:filepath forKey:@"filepath"];

        [request setDelegate:self];
        [request startAsynchronous];


    }

这是出于某种原因,抛出一个EXC_BAD_ACCESS。控制台不会显示任何错误消息。请帮忙!

1 个答案:

答案 0 :(得分:0)

根据您粘贴的代码,很难弄清楚这一点。您的应用程序究竟在哪里抛出异常?也许你的全局变量之一可能不再存在(例如filepath),但是它也可能是你代码中的其他地方。正如您可能猜到的那样,EXC_BAD_ACCESS消息会在您尝试访问不再存在于内存中的对象时发生,所以也许您正在发布之前您依赖的对象?