代码之家  ›  专栏  ›  技术社区  ›  Brian Knoblauch

知道为什么asihttp请求在它以前处理的代码上开始失败了吗?

  •  1
  • Brian Knoblauch  · 技术社区  · 12 年前

    这里有一个简短的片段(同步只是示例,通常我们使用异步,现在两者碰巧都以相同的方式失败…请注意,url2已经设置好了,如果我手动使用它,它可以在我们的服务器上正常工作。此外,请原谅任何简单的拼写错误,因为我的Mac今天很愚蠢,拒绝复制/粘贴,迫使我重新键入…幸运的是,我更需要通用的“做事方式”帮助,而不是像以前那样“修复我的语法”,但(没有任何更改)在上个月的某个时候失败了(可能是iOS 6更新)。:-)

    ASIHTTPRequest *request2=[ASIHTTPRequest requestWithURL:url2];
    request2.requestMethod=@"GET";
    [request2 addRequestHeader:@"Content-Type" value:@"application/json"];
    [request2 setDelegate:self];
    [request2 startSynchronous];
    NSError *error=[request2 error];
    

    返回的错误代码是“1”,但我在asi-http请求文档中找不到错误代码列表来了解它的含义。另外,请注意,我已经更新到了最新的asi-http请求版本(尽管仍然很旧)。

    1 回复  |  直到 12 年前
        1
  •  1
  •   deanWombourne    12 年前

    错误代码是 ASIConnectionFailureErrorType (这是ASIHTTPrequest.h顶部的一个枚举)。

    ASIHTTPRequest.h第188行说

    // If error code is = ASIConnectionFailureErrorType (1, Connection failure occurred) - inspect [[error userInfo] objectForKey:NSUnderlyingErrorKey] for more information
    

    代码中唯一引用它的地方是ASIHTTPRequest.m handleStreamError 方法(第3644行)。

    这就是我的出发点:)