0

我可以在本地访问我的图片,但是当我想从我的 django 服务器访问时,总是会出错。

源代码:

  from django.http.response import HttpResponse
  import mimetypes

  fd = open(CONFIG.SERVICES_PATH + sname+'/'+url,'r')
  print CONFIG.SERVICES_PATH + sname+'/'+url
  mime_type_guess = mimetypes.guess_type(url)
  print mime_type_guess
  data = fd.read()
  fd.close()
  response = HttpResponse(data,mimetype = mime_type_guess[0])

控制台上的打印输出是:

E:/workspace/sydney/main/services/Hunt-Club/shop/1.jpg
('image/pjpeg', None)

我可以从本地路径访问图片,但是当我运行 django 服务器并从浏览器访问时,它给了我错误:

http://localhost:8000/gallery/image/Hunt-Club/shop/1/”无法显示,因为它包含错误。”>

我不知道要我给出正确的路径并读取数据,图片要求仍然存在错误。

4

2 回答 2

0

您可能需要重新考虑通过 django 应用程序提供文件。相反,您应该从 /static 文件夹中提供它们,在 apache 设置中您将使用别名进行配置。

话虽如此,请查看:image/pjpeg 和 image/jpeg

它说它可能与向 IE 提供 pjpeg 内容类型有关。

希望有帮助。

于 2013-06-13T08:52:50.627 回答
0

我发现我的错误在哪里,读取的图像文件代码应该是:

fd = open(CONFIG.SERVICES_PATH + sname+'/'+url,'rb')

因为在 windows 打开文件默认应用以 ASCII 格式打开,所以文件不能正确读取。

于 2013-06-13T17:48:33.767 回答