NSURL 有替代方案吗?

发布于 2024-11-09 03:14:04 字数 90 浏览 2 评论 0原文

一位客户正在考虑开发 iPhone 和 iPad 应用程序,并提出了一个奇怪的问题:除了使用 NSURL 之外,还有其他方法可以将数据从 iOS 设备发送到服务器吗?

A client is pondering development of an iPhone and iPad app and has asked an odd question: Is there any way to send data from an iOS device to a server other than using NSURL?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

五里雾 2024-11-16 03:14:04

我认为你可以尝试使用 POST 请求

responseData = [[NSMutableData data] retain];

NSMutableURLRequest *request = [NSMutableURLRequest 
                                    requestWithURL:[NSURL URLWithString:@"http://www.domain.com/your/servlet"]];

NSString *params = [[NSString alloc] initWithFormat:@"foo=bar&key=value"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:[params dataUsingEncoding:NSUTF8StringEncoding]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];

这样数据就会进入请求正文而不是 URL 本身

I think you could try using a POST request

responseData = [[NSMutableData data] retain];

NSMutableURLRequest *request = [NSMutableURLRequest 
                                    requestWithURL:[NSURL URLWithString:@"http://www.domain.com/your/servlet"]];

NSString *params = [[NSString alloc] initWithFormat:@"foo=bar&key=value"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:[params dataUsingEncoding:NSUTF8StringEncoding]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];

That way the data would go inside the body of the request and not on the URL itself

黑白记忆 2024-11-16 03:14:04

NSURL API 不是从服务器获取数据的方法。它只是一个用于存储 URL 的类。我想如果你真的想要尽可能避免 NSURL,你可以将 URL 存储在 NSString 中,然后使用适当的 API 将其转换为 NSURL。使用它。

要从服务器获取数据,您可以使用 NSURLSession API(现代)或 NSURLConnection API(有点粗糙)。这两种方法都是从 HTTP 或 HTTPS URL 获取数据的相当简单的方法。

如果您出于某种原因不想使用这些 URL 获取 API,您可以使用套接字编写自己的代码或获取 libcurl(MIT 许可证)并将其链接到您的应用程序。请注意,如果您编写自己的套接字代码或使用 libcurl,假设您正在为 iOS 编写代码,则偶尔需要使用高级 API(例如 NSURL 或 CFHost)来唤醒蜂窝无线电。

The NSURL API isn't a way of getting data from a server. It's just a class for storing a URL. I suppose if you really want to avoid NSURL as much as possible, you could store URLs in an NSString, and then use appropriate APIs to convert it into an NSURL right before you use it.

To get data from a server, you would use either the NSURLSession API (modern) or NSURLConnection API (kind of crufty). Either is a fairly straightforward way to fetch data from an HTTP or HTTPS URL.

If you don't want to use either of those URL fetching APIs for some reason, you can write your own code using sockets or grab libcurl (MIT license) and link it into your app. Be aware that if you write your own socket code or use libcurl, assuming you're writing code for iOS, you'll need to occasionally use high-level APIs such as NSURL or CFHost to wake up the cellular radio.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文