如何在电子应用程序中处理请求(捕获请求,提供自定义响应)



我想处理来自电子应用程序中包装的Web应用程序的任何API请求。我的目的是保持通过网络交付的 Web 应用程序相同的 API 调用将与作为独立电子应用程序交付时相同。在后者中,我将捕获 API 请求并提供本地创建的响应。可能吗?我正在研究通过session.defaultSession.webRequest提供的WebRequest回调,例如session.defaultSession.webRequest.onResponseStarted

编辑 02/01/2020我发现也使用ProtocolAPI,但随后我必须修改我想拦截的 API 调用,以便在电子包装器中使用自定义协议,这不是我想要的(拦截请求并在电子上提供自定义响应(。

您的网络应用程序在 Electron 中的工作方式为 100%(*(,与不使用 Electron 相同。(*( 是一个警告,即在 Web 应用程序上抛出生产标志可能会带来其他副作用,这可能会混淆事情。

仅仅因为Electron有它自己的原生方式来处理某些事情,并不意味着Electron会阻止你按照你迄今为止的方式做事。

例如,我通过 JQuery 的.ajax()方法和 Sails 的 MVC 动作处理程序执行.js所有客户端-服务器操作。电子根本没有干涉。

但是,如果你想让Electron干扰,你可以这样做。请参阅 Electron API 的 WebRequest 部分。特别是页面上的第一种方法,onBeforeRequest,似乎与您评论中提到的要求相关。

最新更新