java - 如何检测支持 WebP 的浏览器以及如何为它们提供 WebP 图片?

标签 java jsp webp

看到 WebP 图片惊人的缩小(比无损 + alpha 图片的“pngcrushed”PNG 小约 28%),我们希望将 WebP 图片提供给支持 WebP 的浏览器。

如果客户端浏览器支持 WebP,我如何从 Java webapp 服务器检测到?

这里有一个关于如何从 JavaScript 做到这一点的问题:

Detecting WebP support

但我想知道如何从 Java 中做到这一点。如果从 Java 执行意味着在客户端调用 JavaScript,那么我想知道如何做到这一点。

最佳答案

有一种简单的方法可以检测客户端对 webP 的支持。然后您可以在客户端设置一个 cookie 并读取服务器上的值。

function testWepP(callback) {
   var webP = new Image();     
   webP.src = 'data:image/webp;base64,UklGRi4AAABXRUJQVlA4TCEAAAAvAUAAEB8wAiMw' + 
'AgSSNtse/cXjxyCCmrYNWPwmHRH9jwMA';
   webP.onload = webP.onerror = function () {
      callback(webP.height === 2);     
   }; 
};

testWebP(function(supported) {
   console.log((supported) ? "webP 0.2.0 supported!" : "webP not supported."); 
});

更多信息 here .

关于java - 如何检测支持 WebP 的浏览器以及如何为它们提供 WebP 图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8186156/

相关文章:

java - JSP 视频流(使用 Servlet)

java - 操作和变量是否会在堆栈顶部创建?

javascript - 如何使浏览器关闭按钮上的 session 无效?

java - 访问 JSP 文件中的 Java 包和类

css - 在网站上使用 WebP 图片

php - 如何在 PHP 中创建 .webp 图像

class - 延迟加载 webp 图像 - 如何添加类

java - 可以避免 google 端点 URL 中的版本号

java - 在 weblogic 上共享应用程序类加载器

java - 使用实体字段的值来分隔表单 :input max value