- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在Django为制作提供图像文件的最佳实践是什么?我想用静态图片来回应,我正在将我的django应用程序部署到heroku。
在效率或安全性方面,使用django.middleware.security.SecurityMiddleware
而不是whitenoise.middleware.WhiteNoiseMiddleware
有什么明显的缺点吗?
下面的代码与使用whitenoise相比是否效率低下?为settings.MEDIA_ROOT
中的图像提供服务是否与为静态文件提供服务相同?
img = os.path.join(settings.MEDIA_ROOT, filename)
try:
with open(img, "rb") as f:
return HttpResponse(f.read(), content_type="image/jpeg")
except IOError:
failedResponse = '{"detail": "No image found"}'
return HttpResponse(failedResponse)
最佳答案
你的评论:
这里的whitenoise文档说,我们不应该同时使用中间软件,我只想知道在django.security上使用whitenoise是否有缺点–manan mehta 30分钟前
不,它没有这么说-文档的那一部分提到了中间件类的顺序。您可以很高兴地在django的安全中间件中使用whitenoise。
以下文件摘录:
编辑settings.py文件并将whitenoise添加到middleware\u类列表中,除django的securitymiddleware之外的所有其他中间件:
MIDDLEWARE_CLASSES = [
# 'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
# ...
]
Content-Type
。使用上面的代码,您将以图像的形式返回每个文件-如果用户要求PNG怎么办?
❯ brew install gzip brotli
❯ gzip -k -v lena.bmp
lena.bmp: 18.3% -- replaced with lena.bmp.gz
❯ bro --input lena.bmp --output lena.bmp.bro
❯ ls -lh lena*
-rw-r--r--@ 1 alex staff 768K Feb 16 21:41 lena.bmp
-rw------- 1 alex staff 527K Feb 16 21:45 lena.bmp.bro
-rw-r--r--@ 1 alex staff 627K Feb 16 21:41 lena.bmp.gz
static/<filename>
。
img = os.path.join(settings.MEDIA_ROOT, filename)
with open(img, "rb") as f:
return HttpResponse(f.read(), content_type="image/jpeg")
yoursite.com/static//Users/alex/.ssh/id_rsa
。然后文件名变为
/Users/alex/.ssh/id_rsa
:
filename = '/Users/alex/.ssh/id_rsa'
os.path.join(settings.MEDIA_ROOT, filename)
# '/Users/alex/.ssh/id_rsa'
关于python - 在Django中提供静态文件的最佳做法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42261467/
如果您想分享更多信息,可以在这里找到整个资源 指针: https://github.com/sergiotapia/DreamInCode.Net 基本上,我的API将为其他开发人员提供
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this qu
我不是 SCM 工具的经验丰富的用户,尽管我确信它们的用处,当然。 我在以前的工作中使用了一些不起眼的商业工具,在当前的工作中使用了 Perforce,并在我的小型个人项目中使用了 TortoiseS
所以我想知道一些我应该避免在 javascript 中做的事情以获得良好的 SEO 排名。在我的下一个站点中,我将广泛使用 jquery 和 javascript,但不想牺牲 SEO。那么您认为我应该
基本上,我想知道什么是避免 future CSS 代码出现问题和混淆的最佳方法... 像这样命名 CSS 属性: div#content ul#navigation div.float-left (真
我是一名优秀的程序员,十分优秀!