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"

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

关闭服务

相关推荐
我认不到你3 分钟前
antd proFromSelect 懒加载+模糊查询
前端·javascript·react.js·typescript
集成显卡6 分钟前
axios平替!用浏览器自带的fetch处理AJAX(兼容表单/JSON/文件上传)
前端·ajax·json
scc214013 分钟前
spark的学习-06
javascript·学习·spark
焚琴煮鹤的熊熊野火14 分钟前
前端垂直居中的多种实现方式及应用分析
前端
我是苏苏35 分钟前
C# Main函数中调用异步方法
前端·javascript·c#
转角羊儿1 小时前
uni-app文章列表制作⑧
前端·javascript·uni-app
大G哥1 小时前
python 数据类型----可变数据类型
linux·服务器·开发语言·前端·python
hong_zc1 小时前
初始 html
前端·html
小小吱1 小时前
HTML动画
前端·html
Bio Coder2 小时前
学习用 Javascript、HTML、CSS 以及 Node.js 开发一个 uTools 插件,学习计划及其周期
javascript·学习·html·开发·utools