iOS模拟器访问本地主机服务器

Mir*_*lic 6 localhost ios nsurlsession swift

我正在尝试将剩余数据发送到ios应用,并且我使用以下代码:

    var rest_url = "http://192.168.0.1:8000/rest/users/"

    let url: NSURL = NSURL(string: rest_url)
    let session = NSURLSession.sharedSession()
    let task = session.dataTaskWithURL(url, completionHandler: {data, response, error -> Void in
    if(error != nil) {
        println(error.localizedDescription)
    }
    println(data)
    var err: NSError?

    var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary!
Run Code Online (Sandbox Code Playgroud)

但是我认为我无法像这样访问我的服务器,任何人都知道如何从ios模拟器访问我的服务器?

SFe*_*eng 6

确保 Mac 的 IP 是 192.168.0.1。所以你的网址可能是

var rest_url = "http://YOUR MAC IP:8000/rest/users/"
Run Code Online (Sandbox Code Playgroud)


Dmi*_* A. 5

您的 Info.plist 文件中有应用程序传输安全设置吗?如果没有,那么出于调试目的,您可以将它们设置为

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
Run Code Online (Sandbox Code Playgroud)

此类设置允许向任何服务器发出请求。但是对于发布版本不要这样做。这是不安全的。