IPV6崩溃iOS,无法弄清楚发生了什么

时间:2016-08-30 23:27:29

标签: ios swift amazon-ec2

func getData() {
    let myURLString = "http://ec2-54-201-235-38.us-west-2.compute.amazonaws.com/"+Hot+".php?radius=15&curr_time="+noww+"lat="+String(lat)+"&long="+String(long)
    print(myURLString)
    let myURL = NSURL(string: myURLString)!
    var myCardsArray = [Card]()
    let mySession = NSURLSession(configuration: NSURLSessionConfiguration.defaultSessionConfiguration())
    let myDataTask = mySession.dataTaskWithURL(myURL) { (data, response, error) in
        guard error == nil else {
            return
        }
        //do stuff with the data that comes out of this
    }
}

因此,此代码进行URL会话并获取数据并将其放入数组中。一切正常,所以我把它留了出来。当我提交应用程序时,我发现它仅在IPV6网络上崩溃,并且不知道为什么。我使用NSURLSession所以它应该没问题?

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为AWS EC2不支持IPV6,这是它在IPV6网络上崩溃的原因。您必须通过AWS Elastic Load Balancer集成该EC2实例,因为AWS ELB支持IPV6。

请查看此文档。

https://aws.amazon.com/blogs/aws/elastic-load-balancing-ipv6-zone-apex-support-additional-security/