JavaScriptで無理やりUserAgentを変更するコード。
テストコード用に利用してたものなのでproductionで使う場合は自己責任で。(そんなケースないと思いますが)
/**
* userAgentをハックする
*/
const changeUserAgent = (ua) => {
// Chrome, fx, IE11
window.navigator.__defineGetter__('userAgent', () => ua);
// Safari
try{
// fxでsetterがないとエラーになるので
window.navigator = {
get userAgent() {
return ua;
}
};
}catch(e){}
};
テストコード例
describe('check ua', function () {
before(() => {
changeUserAgent('Mozilla/5.0 (Macintosh; ...');
});
it('is Mac Chrome?', () => {
assert.equal(window.navigator.userAgent, 'Mozilla/5.0 (Macintosh...');
});
});