当前位置:K88软件开发文章中心编程工具Electron → 文章内容

Electron session 模块

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-24 10:21:19

URL 使用 SOCKS v4 代理 foopy:1080.http=foopy,socks5://bar.com - 为所有 URL 使用 HTTP 代理 foopy, 如果 foopy不可用,则切换到 SOCKS5 代理 bar.com.http=foopy,direct:// - 为所有http url 使用 HTTP 代理,如果 foopy不可用,则不使用代理.http=foopy;socks=foopy2 - 为所有http url 使用 foopy 代理,为所有其他 url 使用 socks4://foopy2代理.ses.resolveProxy(url, callback)url URLcallback Function解析 url 的代理信息.当请求完成的时候使用 callback(proxy) 调用 callback.ses.setDownloadPath(path)path String - 下载地址设置下载保存地址,默认保存地址为各自 app 应用的 Downloads目录.ses.enableNetworkEmulation(options)options Objectoffline Boolean - 是否模拟网络故障.latency Double - 每毫秒的 RTTdownloadThroughput Double - 每 Bps 的下载速率.uploadThroughput Double - 每 Bps 的上载速率.通过给定配置的 session 来模拟网络.// 模拟 GPRS 连接,使用的 50kbps 流量,500 毫秒的 rtt.window.webContents.session.enableNetworkEmulation({ latency: 500, downloadThroughput: 6400, uploadThroughput: 6400});// 模拟网络故障.window.webContents.session.enableNetworkEmulation({offline: true});ses.disableNetworkEmulation()停止所有已经使用 session 的活跃模拟网络. 重置为原始网络类型.ses.setCertificateVerifyProc(proc)proc Function为 session 设置证书验证过程,当请求一个服务器的证书验证时,使用 proc(hostname, certificate, callback) 调用 proc.调用 callback(true) 来接收证书,调用 callback(false) 来拒绝验证证书.调用了 setCertificateVerifyProc(null) ,则将会回复到默认证书验证过程.myWindow.webContents.session.setCertificateVerifyProc(function(hostname, cert, callback) { if (hostname == 'github.com') callback(true); else callback(false);});ses.setPermissionRequestHandler(handler)handler FunctionwebContents Object - WebContents 请求许可.permission String - 枚举了 'media', 'geolocation', 'notifications', 'midiSysex', 'pointerLock', 'fullscreen'.callback Function - 允许或禁止许可.为对应 session 许可请求设置响应句柄.调用 callback(true) 接收许可,调用 callback(false) 禁止许可.session.fromPartition(partition).setPermissionRequestHandler(function(webContents, permission, callback) { if (webContents.getURL() === host) { if (permission == "notifications") { callback(false); // denied. return; } } callback(true);});ses.clearHostResolverCache([callback])callback Function (可选) - 操作结束调用.清除主机解析缓存.ses.webRequest在其生命周期的不同阶段,webRequest API 设置允许拦截并修改请求内容.每个 API 接收一可选的 filter 和 listener,当 API 事件发生的时候使用 listener(details) 调用 listener,details 是一个用来描述请求的对象.为 listener 使用 null 则会退定事件.filter 是一个拥有 urls 属性的对象,这是一个 url 模式数组,这用来过滤掉不匹配指定 url 模式的请求.如果忽略 filter ,那么所有请求都将可以成功匹配.所有事件的 listener 都有一个回调事件,当 listener 完成它的工作的时候,它将使用一个 response对象来调用.// 将所有请求的代理都修改为下列 url.var filter = { urls: ["https://*.github.com/*", "*://electron.github.io"]};session.defaultSession.webRequest.onBeforeSendHeaders(filter, function(details, callback) { details.requestHeaders['User-Agent'] = "MyAgent"; callback({cancel: false, requestHeaders: details.requestHeaders});});ses.webRequest.onBeforeRequest([filter, ]listener)filter Objectlistener Function当一个请求即将开始的时候,使用 listener(details, callback) 调用 listener.details Objectid Integerurl Stringmethod StringresourceType Stringtimestamp DoubleuploadData Array (可选)callback FunctionuploadData 是一个 data 数组对象:data Objectbytes Buffer - 被发送的内容.file String - 上载文件路径.callback 必须使用一个 response 对象来调用:response Objectcancel Boolean (可选)redirectURL String (可选) - 原始请求阻止发送或完成,而不是重定向.ses.webRequest.onBeforeSendHeaders([filter, ]listener)filter Objectlistener Function一旦请求报文头可用了,在发送 HTTP 请求的之前,使用 listener(details, callback) 调用 listener.这也许会在服务器发起一个tcp 连接,但是在发送任何 http 数据之前发生.details Objectid Integerurl Stringmethod StringresourceType Stringtimestamp DoublerequestHeaders Objectcallback Function必须使用一个 response 对象来调用 callback :response Objectcancel Boolean (可选)requestHeaders Object (可选) - 如果提供了,将使用这些 headers 来创建请求.ses.webRequest.onSendHeaders([filter, ]listener)filter Objectlistener Function在一个请求正在发送到服务器的时候,使用 listener(details) 来调用 listener ,之前 onBeforeSendHeaders 修改部分响应可用,同时取消监听.details Objectid Integerurl Stringmethod StringresourceType Stringtimestamp DoublerequestHeaders Objectses.webRequest.onHeadersReceived([filter,] listener)filter Objectlistener Function当 HTTP 请求报文头已经到达的时候,使用 listener(details, callback) 调用 listener .details Objectid Stringurl Stringmethod StringresourceType Stringtimestamp DoublestatusLine StringstatusCode IntegerresponseHeaders Objectcallback Function必须使用一个 response 对象来调用 callback :response Objectcancel BooleanresponseHeaders Object (可选) - 如果提供, 服务器将假定使用这些头来响应.ses.webRequest.onResponseStarted([filter, ]listener)filter Objectlistener Function当响应body的首字节到达的时候,使用 listener(details) 调用 listener.对 http 请求来说,这意味着状态线和响应头可用了.details Objectid Integerurl Stringmethod StringresourceType String

上一页  [1] [2] [3]  下一页


Electron session 模块