当前位置: 首页 > 面试题库 >

“ NSURLErrorDomain”-代码:18446744073709550594 Xcode 7上的Ajax调用

苗盛
2023-03-14
问题内容

我试图按如下所示从Xcode 7进行异步调用,但最终看到此错误“
NSURLErrorDomain”-代码:18446744073709550594当我在Xcode 6中使用该代码时,此代码很好。

var task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: {
            (var data, response, error) -> Void in

            if(response != nil) {
                if (isJSONP){
                    if let prefixData = "(".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) {
                        var prefixRange = data!.rangeOfData(prefixData,options:NSDataSearchOptions(), range: NSMakeRange(0, data!.length))
                        if let suffixData = ")".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) {
                            var suffixRange = data!.rangeOfData(suffixData, options: NSDataSearchOptions(), range: NSMakeRange(0, data!.length))
                            var jsonRange = NSMakeRange(prefixRange.location + 1, data!.length - prefixRange.location - 3 - suffixRange.length)
                            data = data!.subdataWithRange(jsonRange)
                            json_str = NSString(data: data!, encoding: NSUTF8StringEncoding)!
                            //     println(json_str)
                        }

                    }

                }
                do {
                    let jsonData:AnyObject? = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers)
                    callback(jsonData: jsonData)
                } catch {
                    print("JSONData not serialized properly or no data exists correctly")
                }

            }// else results not found properly/ trouble accessing server. please try again later
            else {
                var alert = UIAlertController(title: "Alert", message: "Trouble accessing server. Please try again later", preferredStyle: UIAlertControllerStyle.Alert)
                alert.addAction(UIAlertAction(title: "Close", style: UIAlertActionStyle.Default, handler: nil))
                self.presentViewController(alert, animated: true, completion: nil)
            }


        })

        task.resume()

这是我使用的代码。我既没有看到数据,也没有回应。我尝试使用其他应用程序访问相同的URL,并且响应正确。我在任何地方都看不到任何文档,因此请在此处发布。任何帮助,将不胜感激。

谢谢

尼基尔


问题答案:

似乎是一个错误,我通过将所有请求都保留在https下,来解决此问题,尽我所能击中ios9.0和9.0.1,尽管您需要允许url异常,如Apple文档在Info.plist中建议的那样

参考 https://developer.apple.com/library/prerelease/ios/technotes/App-
Transport-Security-
Technote/



 类似资料:
  • 本文向大家介绍ajax跨域调用webservice的实现代码,包括了ajax跨域调用webservice的实现代码的使用技巧和注意事项,需要的朋友参考一下   最近ajax访问webservice遇到跨域的问题,网上搜索资料,总结如下(很多都是觉得人家总结不错的复制下来)   <<用JSON来传数据,靠JSONP来跨域>>   先上我的已实现代码:   前端代码:   服务端代码:   c#   

  • 问题内容: 我对Web开发 非常 陌生,但是总体上有很多开发经验。我有一个ASP页,其中包含一些输入字段和一个提交按钮。这个提交按钮纯粹调用$ .ajax,我打算在代码隐藏文件中调用一个方法。但是,我注意到了两个有趣的事情。首先,无论向其提供了什么数据,ajax调用都会成功。其次,responseText字段是整个页面的html源。 我已经阅读了此文章以及其他指向webconfig的文章,但是这些

  • 问题内容: 我认为解决此问题的最佳方法就是粘贴我的代码: 如果我先点击 编辑按钮 和比 确认编辑 ,我试图获得(作为结果)的页面标签 FINALLY我在这里 不幸的是,这并不发生。我单击“ 编辑”按钮 ,然后单击“ 确认编辑” ,则什么也没有发生。 我怎么了 干杯 用新版本更新 问题答案: 好吧,那变得复杂了。是否将调用该操作还取决于组件或其父项之一的属性的结果。由于Bean在请求范围内,因此默认

  • 问题内容: 是否可以从本地html / js文件(例如file://home/a.html)向远程服务器(例如http:// domain:8080 / api )进行AJAX调用(例如,使用jQuery.ajax()))?如果是,如何启用这种XSS(例如在FF3中)? 我想这是某些浏览器的安全设置,但是找不到哪个。 并假设有一个没有任何服务器端更改(例如JSONP)的答案。 谢谢。 程式码片段:

  • 我想在Java WebApp中使用Tomcat7从ajax调用Servlet。 只有当我使用整个url“http://localhost:8080/webappname/vservlet”时,它才起作用,但只在我的PC中起作用。然而,我必须将它部署在具有商业域名的服务器上,这显然不同于“localhost”。 拜托,谁能告诉我是否有一种方法可以用相对URL来寻址servlet?因为如果我使用像'h

  • 本文向大家介绍jQuery Ajax 实例代码 ($.ajax、$.post、$.get),包括了jQuery Ajax 实例代码 ($.ajax、$.post、$.get)的使用技巧和注意事项,需要的朋友参考一下 $.post、$.get是一些简单的方法,如果要处理复杂的逻辑,还是需要用到jQuery.ajax() 一、$.ajax的一般格式 二、$.ajax的参数描述 参数 描述 url 必需