iphone - 如何下载没有文件扩展名的url源代码?

标签 iphone c++ objective-c c nsstring

截至目前,我正在使用下面的代码下载文件以获取源代码:

    NSString *stringUrl = @"http://example.com/hello/goodbye.html";
NSURL *finalURL = [NSURL URLWithString:[stringUrl stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];
self.source = [NSString stringWithContentsOfURL:finalURL encoding:NSUTF8StringEncoding error:nil];

不要误会我的意思,它很好用,但如果 url 没有像这样的扩展名,它根本不起作用:

NSString *stringUrl = @"http://example2.com/something/";
NSURL *finalURL = [NSURL URLWithString:[stringUrl stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];
self.source = [NSString stringWithContentsOfURL:finalURL encoding:NSUTF8StringEncoding error:nil];

如何获取未定义扩展名的 html 源代码? 希望有人能帮我解决这个问题,因为我的整个项目都依赖于从没有扩展名的 url 获取源代码。谢谢

最佳答案

它应该像定义了一个文件一样工作。 GET url 只是对网络服务器的请求。允许服务器返回它想要的"file"的任何内容。

换句话说:处理像这样的奇怪 URL 的复杂性不需要成为您下载代码的一部分(只要您处理重定向请求)。这是服务器端的复杂性。

编辑:

如果您试图获取页面的 PHP 源代码(或编写 Web 应用程序所用的任何服务器端语言),那您就太不走运了。所有这些代码都在服务器端处理,根本不会发送到客户端。

编辑2:

如果你想把像 http://example2.com/something/ 这样的东西变成 http://example2.com/something/whatever-file-the-webserver -used.XXX,那你也倒霉了。从来没有人说过 Web 服务器必须将其交给一个文件——同样,URL 只是变成了对服务器的 GET 请求。服务器可以根据需要自由生成响应,它甚至不需要查询特定的文件系统文件来生成结果(它可以完全由网络服务器本身在内存中生成,根本不接触文件系统)。系统甚至不需要知道文件的概念,仍然能够很好地实现 HTTP 本身。

关于iphone - 如何下载没有文件扩展名的url源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4532703/

相关文章:

ios - 文本字段的平均值取决于文本字段的数量 "used"

iphone - 我有一个在后台播放音频的 iPad 应用程序,但应用程序图标没有出现在 ipod 控件中

iphone - uiwebview 中的自定义字体但不在应用程序包中

iphone - 移动应用程序显示数千个可用记录的最佳方式?

iphone - 单元测试时为 "Undefined symbols for architecture i386"

c++ - 在资源有限的不同进程之间建立共享内存?

c++ - 向 Qt 项目添加状态对话框

c++ - 在 C++ 中使用 new 创建引用

iphone - iPhone 应用程序安装到设备上后,是否可以通过编程方式更改其名称?

android - 我们是否需要下载移动应用程序的 SSL 证书才能访问安全的网络服务