1

从我的服务器上,我正在拉下一个应该只是个人资料图片的 url。从 url 中拉下图像的相关代码是这样的:

NSString *urlString = [NSString stringWithFormat:@"%@%@",kBaseURL,profile_image_url];
profilePic = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:urlString]]];

我的网址是格式(注意最后没有文件扩展名,因为它是动态呈现的)

localhost:8000/people/1/profile_image

如果我在浏览器中加载 url,图像会显示;但是上面用于下拉 UIImage 的代码不起作用。我已经验证该代码确实从互联网上的随机站点中提取图像。

关于为什么会发生这种情况的任何想法?

4

3 回答 3

4

如果您提供 NSURL 是否有效

http://localhost:8000/people/1/profile_image

我想 http:// 在这里很重要(以便 NSURL 知道它是指向文件还是远程 URL)。

于 2012-06-26T02:57:33.730 回答
2

您无法在 UIImageView 中显示它的原因是因为UIImageView不知道它的格式(jpeg、png 等)。
未来编码的好方法总是使用扩展。不要走捷径,它们总是会变得更糟,你必须一遍又一遍地修复它们。

于 2012-06-26T02:57:21.077 回答
0

首先检查以下内容:

权限:从只读更改为可读写。

我在我的项目中尝试了很多方法来显示来自服务器的图片,我发现的最突出的问题是,默认情况下,您的 localhost 文件夹是只读的,您还需要更改权限......最初我认为只读 wudnt不管我是否只是加载图片,因为从技术上讲,我只是在阅读内容,对。但这确实很重要。

白色空间

您可以检查的另一件事是包含空格的图像名称,如果是,那么您需要在发出 URL 请求时从图像名称中删除空格。

如果没有任何效果,请尝试添加扩展如果一切 正常,请尝试使用显然可以使用的扩展加载图像。

也为我们提供一些初始编码

让我们知道您的代码片段和控制台输出,它们可以帮助社区以更突出的方式解决问题。

于 2012-06-26T03:12:01.703 回答