electron 引入node服务

这里就不介绍electron的配置了,其实引入node服务很简单,直接在electron的主体中引入就可以了。

首先我们需要有一个node服务。

创建一个 index.js和router.js

index.js

javascript 复制代码
const express = require("express");
const router = express.Router();
// 引入全局对象
var path = require("path");
const indexRouter = require("./router.js");
// 声明创建
let http = require("http");

let port = 3000;
// 建立网站服务器
var app = express();

// 引入路由
app.use(indexRouter);

app.set("port", port);

// 创建 HTTP 服务器并监听 port 端口的所有请求
var server = http.createServer(app);
server.listen(port);
console.log("启动成功:端口" + port);

router.js

javascript 复制代码
// 1、导入express模块
const express = require("express");
// 2、创建路由对象
const router = express.Router();
// 3、挂载具体的路由
router.get("/test", (req, res) => {
  res.send({
    code: 200,
    data: "访问成功!",
  });
});

// 4、向外导出路由
module.exports = router;

然后启动 node index.js

访问成功!

electron主体引入

然后我们启动 electron,就会发现node服务启动成了!

这里因为electron没有引入jquery和axios, 这里就用浏览器访问了,如果是vue项目,可以使用代理访问

注意:打包的时候这里的接口就会发生跨域报错,需要在electron打包的时候配置webPreferences:{webSecurity:true}

打包运行

问题一:打包后报错缺少依赖

打包遇到的问题, 就是打包遇到缺少依赖什么的,类似下面问题的,都是打包的时候,electron没有把依赖的依赖给打包进去,所以就缺少好多依赖。

这里我用了一个笨办法解决的,就是把 express 的依赖粘贴过来,重新 cnpm i下载一下就行了,或者缺哪个下那个,如果各位大佬有更好的办法,欢迎指导。谢谢~

javascript 复制代码
"accepts": "~1.3.8",
    "array-flatten": "1.1.1",
    "body-parser": "1.20.1",
    "content-disposition": "0.5.4",
    "content-type": "~1.0.4",
    "cookie": "0.5.0",
    "cookie-signature": "1.0.6",
    "debug": "2.6.9",
    "depd": "2.0.0",
    "encodeurl": "~1.0.2",
    "escape-html": "~1.0.3",
    "etag": "~1.8.1",
    "finalhandler": "1.2.0",
    "fresh": "0.5.2",
    "http-errors": "2.0.0",
    "merge-descriptors": "1.0.1",
    "methods": "~1.1.2",
    "on-finished": "2.4.1",
    "parseurl": "~1.3.3",
    "path-to-regexp": "0.1.7",
    "proxy-addr": "~2.0.7",
    "qs": "6.11.0",
    "range-parser": "~1.2.1",
    "safe-buffer": "5.2.1",
    "send": "0.18.0",
    "serve-static": "1.15.0",
    "setprototypeof": "1.2.0",
    "statuses": "2.0.1",
    "type-is": "~1.6.18",
    "utils-merge": "1.0.1",
    "vary": "~1.1.2",
    "ee-first": "1.1.1"

问题二: 关闭服务,删除历史包

关闭服务

相关推荐
吞掉星星的鲸鱼10 分钟前
使用高德api实现天气查询
前端·javascript·css
lilye6613 分钟前
程序化广告行业(55/89):DMP与DSP对接及数据统计原理剖析
java·服务器·前端
....49213 分钟前
Vue3 + Element Plus + AntV X6 实现拖拽树组件
javascript·vue.js·elementui·antvx6
zhougl9962 小时前
html处理Base文件流
linux·前端·html
花花鱼2 小时前
node-modules-inspector 可视化node_modules
前端·javascript·vue.js
HBR666_2 小时前
marked库(高效将 Markdown 转换为 HTML 的利器)
前端·markdown
careybobo4 小时前
海康摄像头通过Web插件进行预览播放和控制
前端
TDengine (老段)4 小时前
TDengine 中的关联查询
大数据·javascript·网络·物联网·时序数据库·tdengine·iotdb
杉之5 小时前
常见前端GET请求以及对应的Spring后端接收接口写法
java·前端·后端·spring·vue
喝拿铁写前端5 小时前
字段聚类,到底有什么用?——从系统混乱到结构认知的第一步
前端