iPhone SDK:ASIFormDataRequest不成功,为什么?

时间:2010-12-07 16:51:19

标签: iphone http post

我正在尝试这个:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:
                               [NSURL URLWithString:my_url]];
[request setPostValue:id_ forKey:@"id_source"];
[request setPostValue:email forKey:@"email"];

[request startSynchronous];

我从控制台获得了

wait_fences: failed to receive reply: 10004003

这是内部的东西。

你知道为什么吗?我正在尝试从浏览器中获取真实的表单,它没有任何问题。在网址或任何参数中都没有错误。

提前10倍。

1 个答案:

答案 0 :(得分:1)

要调试request,请尝试以这种方式获取`响应:

NSError *error = [request error];
if (!error) {
  NSString *response = [request responseString];
}

error应告诉您需要了解的所有信息,并应保护您的回复免受任何问题的影响。如果你之前没有这样做,NSError就是good post

关于现有的wait_fences事情......我想我已经找到了这个,基于下面列出的其他一些来源。

当输入字段无法重新调整其firstResponder状态时,似乎会出现此问题。我的远程猜测是,帮助您填充正在处理的表单的键盘并未将其状态重新设置为firstResponder

所以,在你的视图控制器中,假设你已经声明了一个文本字段,你可以试试这个:

- (void)viewDidLoad
{
    // set up the text field
    [self.textField setDelegate:self];

    [self.textField addTarget:self
                  action:@selector(textFieldFinished:)
        forControlEvents:UIControlEventEditingDidEndOnExit];

    [super viewDidLoad];
}

- (IBAction)textFieldFinished:(id)sender
{
    [sender resignFirstResponder];
}

我看到的一些帖子形成了这个观点:

"wait_fences: failed to receive reply: 10004003"?

http://www.iphonedevsdk.com/forum/iphone-sdk-development-advanced-discussion/17373-wait_fences-failed-receive-reply-10004003-a.html

http://discussions.apple.com/thread.jspa?threadID=2014220