JavaScript API を使用して現在の OS に評価される動的な値 (例: OS X 10.10.4
) を作成しようとしていますが、JavaScript API で使用可能な値としてユーザーの現在の OS に関する記述を見つけることができません。
これは今すぐ可能ですか、それとも不可能ですか?
JavaScript API を使用して現在の OS に評価される動的な値 (例: OS X 10.10.4
) を作成しようとしていますが、JavaScript API で使用可能な値としてユーザーの現在の OS に関する記述を見つけることができません。
これは今すぐ可能ですか、それとも不可能ですか?
現在の OS を取得する実際の方法はありません。私が提案できる唯一のことはハックですが、ほとんどの場合はうまくいくはずです。アイデアは、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];