【问题标题】:nsurlrequest wont load the pdf [closed]nsurlrequest 不会加载 pdf [关闭]
【发布时间】:2013-11-04 20:48:59
【问题描述】:
NSString* urlText = @"http://www2.htk.dk/Socialpsykiatrien/menuplan%20værestedet.pdf";
NSString* urlTextEscaped = [urlText stringByAddingPercentEscapesUsingEncoding:NSISOLatin1StringEncoding];
NSURL *url = [NSURL URLWithString: urlTextEscaped];

NSURLRequest *request = [NSURLRequest requestWithURL:url];

这是我的代码。并且每次都停在 NSURLRequest ......看起来它正确加载了 url 但我似乎找不到错误

控制台说的是:(lldb)

【问题讨论】:

  • 您正在向已经转义的 url 添加转义编码,看来您在 urlText 中已经有 %20。
  • 我在链接中也有一个æ...
  • 也试过这个 NSURL *targetURL = [NSURL URLWithString:@"www2.htk.dk/Socialpsykiatrien/…; NSURLRequest *request = [NSURLRequest requestWithURL:targetURL]; 它什么也不加载

标签: iphone objective-c nsurlrequest


【解决方案1】:

如果你避免百分比转义已经被百分比转义的东西,它会很好地工作:

NSString* urlText = @"http://www2.htk.dk/Socialpsykiatrien/menuplan værestedet.pdf";
NSString* urlTextEscaped = [urlText stringByAddingPercentEscapesUsingEncoding:NSISOLatin1StringEncoding];
NSURL *url = [NSURL URLWithString: urlTextEscaped];
NSURLRequest *request = [NSURLRequest requestWithURL:url];

或者,如果你的这个字符串的源已经有一个%20,你可以取消它并重新转义它:

NSString* urlText = @"http://www2.htk.dk/Socialpsykiatrien/menuplan%20værestedet.pdf";
NSString* urlTextUnescaped = [urlText stringByReplacingPercentEscapesUsingEncoding:NSISOLatin1StringEncoding];
NSString* urlTextEscaped = [urlTextUnescaped stringByAddingPercentEscapesUsingEncoding:NSISOLatin1StringEncoding];
NSURL *url = [NSURL URLWithString: urlTextEscaped];
NSURLRequest *request = [NSURLRequest requestWithURL:url];

【讨论】:

  • 第二个就像一个魅力。源 allrdy 已编码 %20 符号
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-01-17
  • 1970-01-01
  • 2011-09-17
  • 2022-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多