我正在尝试使用用angular编写的现有Web应用程序并将其包装在电子文件中。我已经获得了电子来打开有角度的应用程序,但是我希望电子包装器能够处理ajax请求,而不是将应用程序发布到Web服务。例如,角度应用程序尝试从“ api / subscriptions”处获取数据,我希望它从电子端请求,然后让电子服务数据从本地文件系统中获取。有没有办法做到这一点,还是我需要制作仅在针对电子环境构建时才包含的自定义角度服务?我想让Angular应用尽可能不受环境限制。
答案 0 :(得分:1)
使用WebRequest并拦截所有请求,然后返回您的自定义响应。
它还带有一个过滤器,因此您只能拦截说“ / api / subscriptions”等。
const {session} = require('electron')
session.defaultSession.webRequest.onBeforeRequest((details, callback) => {
//Stopping original request
//Fetch from some file etc.
const response = fs.readFile .... //Or wherever
//Make sure to call the callback with response
callback({response})
})