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

Ced*_*tin 3 java jsp webp

看到WebP图片的惊人尺寸缩小(比无损+ alpha图片的"pngcrushed"PNG小约28%),我们希望向支持WebP的浏览器提供WebP图片.

如何从Java webapp服务器检测客户端的浏览器是否支持WebP?

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

检测WebP支持

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

Jam*_*ate 6

有一种在客户端上检测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."); 
});
Run Code Online (Sandbox Code Playgroud)

更多信息在这里.