fire2y
V2EX  ›  Django

关于 django 图片访问的问题

  •  
  •   fire2y · May 30, 2019 · 3746 views
    This topic created in 2564 days ago, the information mentioned may be changed or developed.

    有个用户上传图片的接口,用的是 django 自带的

    picture = models.ImageField(default='normal.png', verbose_name='图片',upload_to='avatar')
    

    将图片保存到本地,数据库存 url,我现在有一个问题

    所有用户都可以通过

    http://192.168.0.111/medias/avatar/682776550417641629_3rZLCA9.png 访问图片

    等于就是能看到所有的图片

    权限我用的是官方自带的权限,我想到的方法是写一个中间件,访问 /medias/avatar/进行权限判断

    属于这个用户的图片就放行

    希望大家帮我想一想,谢谢~~

    5 replies    2019-05-30 19:18:17 +08:00
    yim7
        1
    yim7  
       May 30, 2019   ❤️ 1
    也就是说,用户 A 看不到用户 B 的头像?
    614457662
        2
    614457662  
       May 30, 2019 via Android
    关键字 apache xsendfile
    37Y37
        4
    37Y37  
       May 30, 2019
    自带的权限是实现不了了,需要更细力度的基于对象的权限控制
    fire2y
        5
    fire2y  
    OP
       May 30, 2019
    @yim7 emmm 不是头像,是其他的图片
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   908 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 19:47 · PVG 03:47 · LAX 12:47 · JFK 15:47
    ♥ Do have faith in what you're doing.