iOS Swift NSURL Web Address Not Working

故事扮演 提交于 2019-12-13 08:07:51

问题


I'm attempting to get data from a server. My URL is (for example): http://dommain.com/action

When I execute

let nsURL = NSURL(fileURLWithPath: url)

the URL gets translated into http:/domain.com/action. Then when I execute this:

let task = NSURLSession.sharedSession().dataTaskWithURL(nsURL) {
    (data, response, error) in
    print("data=\(data) response=\(response) error=\(error)")
}

the error property says it can't find "file:///http:/domain.com/action

I'm not sure what I'm doing wrong.


回答1:


Replace

let nsURL = NSURL(fileURLWithPath: url)

with

let nsURL = NSURL(string: url)

An NSURL object represents a URL that can potentially contain the location of a resource on a remote server, the path of a local file on disk, or even an arbitrary piece of encoded data.

NSURL(fileURLWithPath: url) initializes and returns a newly created NSURL object as a file URL with a specified path. For network URL use NSURL(string: url) instead.


For Swift 3 and upwards, use URL instead of NSURL:

let u = URL(string: url)


来源:https://stackoverflow.com/questions/33305631/ios-swift-nsurl-web-address-not-working

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!