NSURLErrorDomain Code=-1000 "bad URL": 这到底是啥意思?

Posted

技术标签:

【中文标题】NSURLErrorDomain Code=-1000 "bad URL": 这到底是啥意思?【英文标题】:NSURLErrorDomain Code=-1000 "bad URL": What does it really mean?NSURLErrorDomain Code=-1000 "bad URL": 这到底是什么意思? 【发布时间】:2012-05-28 09:50:20 【问题描述】:

我有这个令人困惑的错误。我通过 GET 方法发送 JSON,网站将解析并显示数据。问题是我收到错误“NSURLErrorDomain Code -1000”或更简单的“错误 URL”。问题是当我检查服务器时,我发送的数据被成功解析并显示。所以我真的很困惑为什么我会收到这个“错误的 URL”错误。谁能帮帮我?

这是我收到的错误:

错误域=NSURLErrorDomain Code=-1000 "错误 URL" UserInfo=0xff73df0 NSUnderlyingError=0xff73810 "错误 URL", NSLocalizedDescription=错误 URL

编辑:

http://sample.com/imwebjson.php?sid=5amp13&job=sendNotes&im_flds=\"im_uid\":"1",\"im_bookid\":"57",\"im_pagenr\":"1",\"im_notes\":"Testing%5C%5Cn"

好的,您可能会问为什么 JSON 字符串的某些部分已经编码。这些编码部分是特殊字符。我意识到 stringByAddingPercentEscapesUsingEncoding 非常不完整。它不会对所有特殊字符进行编码,而且当它对某些特殊字符进行编码时,根本无法识别 URL。所以我决定手动将特殊字符编码到字符串中。

【问题讨论】:

网址中是否存在其他空格或其他特殊字符? 看看这个 - ***.com/questions/6287230/… 我实际上已经尝试过了。这是我的第一个假设。我对 JSON 文件进行了编码,因此如果我将它放在 URL 中,它将是兼容的。但是,它给了我另一个错误:NSErrorFailingURLStringKey。你知道这意味着什么吗? 您使用的实际网址是什么? @JeremyP 我不能给你确切的 URL,但这里有一个稍微修改过的 URL:mydomain.com/…\"im_uid\":"1",\"im_bookid\":"57" ,\"im_pagenr\":"1",\"im_notes\":"Testing%5C%5Cn" 这是一个有效的 URL。这意味着该 URL 实际上正在被服务器解析。请记住,我在这里使用的是 GET 方法,因此 JSON 实际上是字符串的一部分。就像我说过的那样,我决定不对其进行编码,因为它实际上无法解析数据。 【参考方案1】:

冒号字符:(至少可能是" 等其他字符)需要在URL 中进行百分比编码。

【讨论】:

我会在服务器再次运行后尝试一下。我会及时通知你:) 我尝试了您的建议,但现在它给了我 2 个错误:NSErrorFailingURLKey(当我将编码的 JSON 附加到 URL 时发生)和 kCFErrorDomainCFNetwork Code=303。数据已成功解析,这就是我对这些错误感到困惑的原因。 请忽略 KCFErrorDomainCFNetwork。由于解析问题,我收到了错误:)【参考方案2】:

在 GET 参数中,您必须为“%20”更改空格“”

【讨论】:

以上是关于NSURLErrorDomain Code=-1000 "bad URL": 这到底是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

ios 跳过对https 的验证(Error Domain=NSURLErrorDomain Code=-999)

SDWebImage : NSURLErrorDomain - Code = 406

网络连接丢失。NSURLErrorDomain Code=-1005

AFNetworking 获取请求,获取 NSURLErrorDomain Code=-1005

NSURLErrorDomain Code=-1202 使用同步请求时

NSURLErrorDomain Code=-999 使用 AFNetworking 示例代码