关于这个问题,国内相关资料比较少,所以这里自己记录一下,也给其他被这个问题困扰的人提供一个思路

html页面:

<body>
    <webview
      id="foo"
      src="http://xxxxx"
      style="display: flex; width: 100%; height: 1000px"
    ></webview>
  </body>

js页面:

import { app,BrowserWindow,protocol,session } from 'electron'
import path from 'path'

app.whenReady().then(() => {
  const filter = {
    urls: ['http://xxxx/*'] // xxxx是你要拦截地址
  }
  session.defaultSession.webRequest.onBeforeRequest(filter, (details, callback) => {
    // details.url返回的是上面filter.urls需要拦截的所有接口
    if (details.url === 'http://xxxx') {
      callback({
        // redirectURL是你重定向本地文件位置, atom自定义redirectURL: 'atom:///D:\xxxx\xxx\photo.jpg'
      })
     
    } else {
      callback({ requestHeaders: details.requestHeaders })
    }
  })
    
  // 这里的atom是上面自定义名称
  protocol.registerFileProtocol('atom', (request, callback) => {
    const url = request.url.substring(8)
    callback(decodeURI(path.normalize(url)))
  })

})

原文地址:https://blog.csdn.net/stargazer1201/article/details/129030305

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_41284.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注