NSURLUnsupportedURL -1002 貌似有效URL
NSURLUnsupportedURL -1002 on seemingly valid URL
我正在使用 Alamofire 在不属于我的网站上查询搜索。
我使用的代码在其他 URL 上工作得很好,但不是这个。我在 URL 上收到不受支持的 URL 响应,例如“http://www.180.no/bransje/ADMINCONS-AS/1.htm”。我打印了 URL 并 curl
d 它,效果很好。不知何故,这不适用于 Alamofire。我有什么明显的错误吗?
代码:
//Search 180.no for info page
let search180Query = "http://www.180.no/bransje/" + (company.name?.stringByReplacingOccurrencesOfString(" ", withString: "-"))! + "/1.htm"
print(search180Query) //http://www.180.no/bransje/PORTRAIT-MILLION-HANDSHAKES-AS/1.htm
Alamofire.request(.GET, search180Query)
.responseData { searchResultPage in
let searchResultPage = Kanna.HTML(html: searchResultPage.data!, encoding: NSUTF8StringEncoding)
let searchResultID = searchResultPage!.xpath("//div[@class='found-company-container-grey foundItem'][1]//@id")
//ERROR: fatal error: unexpectedly found nil while unwrapping an Optional value
print(searchResultID.text)
}
你可以尝试添加
stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
与 Url ?。它可能会解决您的问题。
Swift1.2let search180Query = ("http://www.180.no/bransje/" + (company.name?.stringByReplacingOccurrencesOfString(" ", withString: "-"))! + "/1.htm").stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
Swift2.0let search180Query = ("http://www.180.no/bransje/" + (company.name?.stringByReplacingOccurrencesOfString(" ", withString: "-"))! + "/1.htm" as NSString).stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
我解决了这个问题。这与 Alamofire 无关,是我的 HTML 解析库 Kanna 无法读取 UTF8,因为该网站是用 Windows1502 编码的。以前从未遇到过,有趣的选择。
我正在使用 Alamofire 在不属于我的网站上查询搜索。
我使用的代码在其他 URL 上工作得很好,但不是这个。我在 URL 上收到不受支持的 URL 响应,例如“http://www.180.no/bransje/ADMINCONS-AS/1.htm”。我打印了 URL 并 curl
d 它,效果很好。不知何故,这不适用于 Alamofire。我有什么明显的错误吗?
代码:
//Search 180.no for info page
let search180Query = "http://www.180.no/bransje/" + (company.name?.stringByReplacingOccurrencesOfString(" ", withString: "-"))! + "/1.htm"
print(search180Query) //http://www.180.no/bransje/PORTRAIT-MILLION-HANDSHAKES-AS/1.htm
Alamofire.request(.GET, search180Query)
.responseData { searchResultPage in
let searchResultPage = Kanna.HTML(html: searchResultPage.data!, encoding: NSUTF8StringEncoding)
let searchResultID = searchResultPage!.xpath("//div[@class='found-company-container-grey foundItem'][1]//@id")
//ERROR: fatal error: unexpectedly found nil while unwrapping an Optional value
print(searchResultID.text)
}
你可以尝试添加
stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
与 Url ?。它可能会解决您的问题。
Swift1.2let search180Query = ("http://www.180.no/bransje/" + (company.name?.stringByReplacingOccurrencesOfString(" ", withString: "-"))! + "/1.htm").stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
Swift2.0let search180Query = ("http://www.180.no/bransje/" + (company.name?.stringByReplacingOccurrencesOfString(" ", withString: "-"))! + "/1.htm" as NSString).stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
我解决了这个问题。这与 Alamofire 无关,是我的 HTML 解析库 Kanna 无法读取 UTF8,因为该网站是用 Windows1502 编码的。以前从未遇到过,有趣的选择。