我需要設置用戶代理的電子爲包括touch
標誌,因爲我寫的觸摸屏的應用程序,它似乎並沒有自動確實檢測到它是一個觸摸屏上運行。如何設置電子的UserAgent
任何幫助將是不錯的,我已經嘗試過在BrowserWindow.loadURL選項PARAM設置它。
我需要設置用戶代理的電子爲包括touch
標誌,因爲我寫的觸摸屏的應用程序,它似乎並沒有自動確實檢測到它是一個觸摸屏上運行。如何設置電子的UserAgent
任何幫助將是不錯的,我已經嘗試過在BrowserWindow.loadURL選項PARAM設置它。
您可以設置User-Agent頭使用onBeforeSendHeaders的主要過程:
import { session } from 'electron';
session.defaultSession.webRequest.onBeforeSendHeaders((details, callback) => {
details.requestHeaders['User-Agent'] = 'SuperDuperAgent';
callback({ cancel: false, requestHeaders: details.requestHeaders });
});
加載URL時,只需使用一個選擇對象。
function createWindow() {
win = new BrowserWindow({width: 800, height: 600});
win.loadURL('http://www.whoishostingthis.com/tools/user-agent/',
{userAgent: 'Chrome'});
win.on('closed',() => {
win = null
});
}
以供將來參考:如果要延長,而不是覆蓋它的用戶代理,你可以通過'雙贏得到原來的用戶代理。 webContents.getUserAgent()'。 – Tsunamis
請確保您的版本> = 0.36.1。否則它將無法工作。剛花了太多的時間搞清楚了這一點。 – ccnokes
@ccnokes沒有,你只需要提供前回調參數的過濾器(或undefined);) –