如何用JavaScriptAPI得到当前的OS?

How to get the current OS with the JavaScript API?

希望构建一个动态值,该值的计算结果为 OS(例如:OS X 10.10.4)和 JavaScript API,但无法找到任何在 JavaScript API.

中提及用户的当前 OS 作为可用值

现在可以吗?

没有获取当前 OS 的实际方法。我唯一可以建议的是 hacky,但在大多数情况下应该有效。这个想法是获取您发送的最后一个请求的 User-Agent 并从中提取 OS X 版本:

// last HTTP exchange of the current request
var exchange = context.getCurrentRequest().getLastExchange();

// user agent
var ua = exchange.getRequestHeaderByName("User-Agent");

// parse user agent
var matches = ua.match(/OS X\/(\d+(?:\.\d+)*)/);

// full OS name
// OS X/10.10.4
var os = matches[0];

// version string
// 10.10.4
var version = matches[1];

或者单行:

// 10.10.4
return context.getCurrentRequest().getLastExchange().getRequestHeaderByName("User-Agent").match(/OS X\/(\d+(?:\.\d+)*)/)[1];