gpt4 book ai didi

swift - 设备上的 watchOS 2 不读取 NSData

转载 作者:搜寻专家 更新时间:2023-10-31 19:34:38 25 4
gpt4 key购买 nike

在我的 watchOS 2 Apple Watch WatchKit 扩展中,我使用 NSURL 和 NSData 来请求 URL 并检索它发送的 JSON。但是,这只适用于模拟器。起初我有一个问题,因为我使用了一个不受信任的地址(一个内部 IP 地址),但是在将一些键和值添加到 Info.plist 之后,这个问题就得到了解决。为了完全确定 URL 是否可信,我使用了来自 GitHub API ( https://api.github.com/users/mralexgray/repos ) 的开放 URL。我使用以下代码来检索响应:

var responseData: NSData? = nil
if let url = NSURL(string: "https://api.github.com/users/mralexgray/repos") {
if let data = NSData(contentsOfURL: url){
responseData = data
}
}

在我的 watchOS 2 模拟器上,responseData 被正确填充,但在我的 Apple Watch 设备上,它看起来像第 3 行及其正文被跳过了。这是问题、功能还是我做错了什么?

最佳答案

这听起来像是 NSData 方法中的错误,contentsOfURL:option:error: 说文件无法打开。

NSURLSession 工作正常。

NSURL * url = [NSURL URLWithString:@"https://api.github.com/users/mralexgray/repos"];

NSURLSessionDataTask *downloadTask = [[NSURLSession sharedSession]
dataTaskWithURL:url completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
NSLog(@"data size %ld", (unsigned long)data.length);
}];

[downloadTask resume];

关于swift - 设备上的 watchOS 2 不读取 NSData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32769091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com