问题标签 [nsurlsessiondatatask]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - NSURLSessionDataTask 调用在目标 c 中不起作用?
单击“可操作通知”按钮后,当应用程序未运行时,我正在执行以下代码。我启用了后台模式,远程通知。
//代表
(我在这里展示的演示服务器 url 不是实际的)
我们可以在应用挂起或关闭时使用 NSURLSessionDataTask 执行后台任务吗?
此代码非常适用于服务器 URL ex。https://211.23.34.234/engine/auth/tx
但是当我将服务器 URL更改为https://demo.tes.com/engine/auth/tx时 不起作用。
NSURLSessionDataTask 有什么问题?
这是由于静态 IP 211.23.34.234 造成的吗?为什么相同的代码不能与https://demo.tes.com/engine/auth/tx一起使用?(此服务器 url 可以动态更改)任何帮助将不胜感激。
如何解决这个问题?
注意::将代理设置为 NSURLSessionDataTask 的“nil”将适用于https://demo.tes.com/engine/auth/tx服务器,但不适用于https://211.23.34.234/engine/auth/tx
如何让它在两台服务器上工作?
ios - 如何从 NSURLSessionDataTask 获取 NSDictionary
因此,我尝试将 dataFetched 作为全局变量,这样我就可以在我的 .m 文件周围访问它,并使其可供其他 .m 文件访问,但是当我尝试NSLog
从其他 .m 文件访问 dataFetched 时,它会输出(null)。无论如何,我可以在需要数据的其他 .m 文件中访问数据吗?
ios - iOS 9+ Testflight 蜂窝数据不工作
我有一个用 Swift 2 编写的移动 iOS 应用程序。在应用程序内部,通过调用我们的服务器
我有 3 台带有蜂窝数据的 iPad。1个内部,我可以访问并可以连接到调试器。2 外部我无法访问,必须提出问题才能了解正在发生的事情。
内部 iPad 可以在 WiFi 和蜂窝网络上与 build X 一起使用,我的意思是请求通过并很好地联系服务器。
外部 iPad 可通过 WiFi 工作,但不能通过蜂窝网络工作。
我们已经尝试过
- 确保特定应用的移动数据已开启和开启
- 切换飞行模式
- 重置网络
- 重启设备
- 确保设备在
dataTaskWithRequest
失败时确实有连接。
关于这里可能发生的事情的任何想法?有没有遗漏的设置?我错过了 info.plist 中的设置(为什么 1 有效)?
ios - NSURLSessionDataTask 内存泄漏
我正在尝试用 NSURLSessionDataTask 做简单的事情来从服务器获取一些数据。以前我使用 NSURLConnection 来获取该数据,但想将我的代码移动到 NSURLSessionDataTask。所以这里的代码
它工作得很好,我也得到了输出。但是当我在仪器中运行相同的代码时,我得到以下泄漏仪器输出
objective-c - NSNotification 未在 NSURLSession dataTaskWithRequest 中触发:
我正在尝试将我的 Obj-C 类之一的一部分转换为能够在 iWatch 上运行,为此,我必须使用 NSURLSession dataTaskWithRequest: 而不是 NSURLConnection sendAsynchronousRequest: 这似乎没有问题(表示 XML 已正确加载和解释)但在我的原始代码中,我为主程序触发了几个 NSNotification 以实现一些可见的修改。
似乎在 NSURLSession completionHandler 内部,它不再起作用了。
这是原始代码:
现在固定版本如下所示:
疯狂的是,这两个通知都没有使用第二种方法发送/接收,它在第一个版本中运行良好。
同样,我在另一种相同的情况下有一个计时器调用,如下所示:
再一次,它使用 NSURLConnection 工作,但不在 NSURLSessionDataTask 内......
你能帮我解决这个问题吗?
非常感谢。
ios - 使用 NSURLSession 上传多张图片
我正在尝试上传用户选择的图像数组。它们被base64
编码。我收到来自服务器的空响应。下面是我的代码。
我正在使用QBImagePickerController从委托获取图像。我有一个NSMutableDictionary
作为正文内容的NSMutableURLRequest
.
这里是NSMutableURLRequest
我收到服务器响应代码为 500 和来自服务器的空响应。我都试过了NSURLSessionDataTask
和NSURLSessionUploadTask
。任何帮助都会有好处!
json - void 函数中的意外非 void 返回值 - 来自 dataTask 的 JSON 数据(带有:URL) - (Swift 3.0)
我正在用 Swift 3 构建一个 iOS 应用程序,它应该与我自己构建的 JSON Rest Api 进行通信。该应用程序将从 Api 获取各种内容,但现在我需要它做的就是通过握手功能检查 Api 的可用性。
这是我设置的 dataTask,它运行得很好(当我打印 jsonResult 时,我收到“欢迎!”消息如预期的那样。问题是我希望我的握手函数返回 true 或 false(所以我如果情况为假,则可以发出警报。)当我尝试在 if 语句中设置 return true 或 false 时,我收到错误:Unexpected non-void return value in void function。
我的问题是:如何从 dataTask 中返回数据,以便在握手函数中对其进行检查?我对 Swift 很陌生,所以感谢所有帮助:)
下面是整个班级:
}
ios - NSURLSession.sharedSession().dataTaskWithRequest 不工作
我现在正在开发一个小应用程序,我需要在其中连接到一些网站以获取一些信息。
这是我制作的函数,它在 90% 的时间里都能满足我的需求。
虽然有时我遇到了问题,但我不知道为什么。例如,下面是工作用例 (RSC = 200) 和非工作用例 (RSC = 404) 的调试器控制台中的跟踪:
按预期工作:
没有按预期工作:
我该怎么做才能使第二个案例起作用?我需要看哪里?
ios - NSURLSession HTTP/2 内存泄漏
这个我的测试用例指出,当使用带有 HTTP/2 连接的 NSURLSession 时存在内存问题。
test1:iOS 9. HTTP/2 服务器
我使用 NSURLSession 将 10M 文件上传到 HTTP/2 服务器,如果文件上传完成一切正常,但如果我在完成之前取消上传任务,10M 将永远不会释放。
test2:iOS 9. HTTPS1.1 服务器
我用https1.1文件服务器测试同样的代码,我取消上传任务还是没有,一切正常,内存恢复正常。(10M数据释放)
test3 iOS 8. HTTP/2 服务器
这种情况一切正常。(NSURLSession 没有与 HTTP/2 进行协议协商)
所以,即使我使用 NSURLSession 有一些不合适的地方,NSURLSession 的性能在 HTTP/2 上也不正常。
除了内存问题,当使用带有 HTTP/2 的 NSURLSession 上传文件时,进度段大小很大(一次回调可能 2M 'didSendBodyData')
我也读过这个页面。SSL 可能会缓存一些东西,但不应该缓存整个文件。(当我取消任务或请求超时时,10M 文件大小的内存泄漏)
任何人都知道导致问题的原因,可以给我一些帮助。谢谢。
问题更新0912:添加测试项目链接
ios - dataTaskWithRequest:completionHandler: 已弃用
我在用着AFNetworking
在我的项目中使用从 REST api 获取数据。但是当我使用 Github 中描述的方法时,我收到了警告。
这是我的代码:
我的项目支持 iOS 7.0 及更高版本。
我的 Xcode 版本 7.3.1
有什么办法可以克服这个警告吗?