一个可以变化图片的url

接口地址 随机图片url

http://liflag.cn/tool/getImage.png

该接口从图像库中随机获取一个头像返回给用户

网站头像如果能用网络图片的话,则头像每次打开都是不一样的,动态变化头像

你可以看到,你刷新本文后,我的头像就不一样了

在文章中插入该接口作为图片url 刷新文章图片也会变化

随机img

原理

图片库中随机获取图片,下载到本地然后以流的形式返回给前台

核心代码

@GetMapping(value = "/getImage.png")
    public void getImage(HttpServletRequest request, HttpServletResponse response) throws Exception {
        JSONObject res = null;
        Set<String> imgR = redisTemplate.opsForSet().distinctRandomMembers(KeyEnum.REDIS_JOKE_PIC.toString(),1);
        Iterator cursor = imgR.iterator();
        while (cursor.hasNext()) {
            res = JSONObject.parseObject(cursor.next().toString());
        }
        String url = (String) res.get("img");
        String name = url.substring(url.lastIndexOf("/")+1);     //为下载的文件命名
        String path = HttpUtils.download(url,name);
        File file = new File(path);
        OutputStream os = null;
        try {
            BufferedImage image = ImageIO.read(new FileInputStream(file));
            response.setContentType("image/png");
            os = response.getOutputStream();
            if (image != null) {
                ImageIO.write(image, "png", os);
            }
        } catch (IOException e) {
        } finally {
            if (os != null) {
                os.flush();
                os.close();
            }
            file.delete();
        }
    }


已有 0 条评论

    我有话说: