electron 引入node服務(wù)的操作方法
這里就不介紹electron的配置了,其實(shí)引入node服務(wù)很簡(jiǎn)單,直接在electron的主體中引入就可以了。
首先我們需要有一個(gè)node服務(wù)。
創(chuàng)建一個(gè) index.js和router.js
index.js
const express = require("express");
const router = express.Router();
// 引入全局對(duì)象
var path = require("path");
const indexRouter = require("./router.js");
// 聲明創(chuàng)建
let http = require("http");
let port = 3000;
// 建立網(wǎng)站服務(wù)器
var app = express();
// 引入路由
app.use(indexRouter);
app.set("port", port);
// 創(chuàng)建 HTTP 服務(wù)器并監(jiān)聽(tīng) port 端口的所有請(qǐng)求
var server = http.createServer(app);
server.listen(port);
console.log("啟動(dòng)成功:端口" + port);router.js
// 1、導(dǎo)入express模塊
const express = require("express");
// 2、創(chuàng)建路由對(duì)象
const router = express.Router();
// 3、掛載具體的路由
router.get("/test", (req, res) => {
res.send({
code: 200,
data: "訪問(wèn)成功!",
});
});
// 4、向外導(dǎo)出路由
module.exports = router;然后啟動(dòng) node index.js

訪問(wèn)成功!

electron主體引入

然后我們啟動(dòng) electron,就會(huì)發(fā)現(xiàn)node服務(wù)啟動(dòng)成了!

這里因?yàn)閑lectron沒(méi)有引入jquery和axios, 這里就用瀏覽器訪問(wèn)了,如果是vue項(xiàng)目,可以使用代理訪問(wèn)

注意:打包的時(shí)候這里的接口就會(huì)發(fā)生跨域報(bào)錯(cuò),需要在electron打包的時(shí)候配置webPreferences:{webSecurity:true}

打包運(yùn)行
問(wèn)題一:打包后報(bào)錯(cuò)缺少依賴
打包遇到的問(wèn)題, 就是打包遇到缺少依賴什么的,類似下面問(wèn)題的,都是打包的時(shí)候,electron沒(méi)有把依賴的依賴給打包進(jìn)去,所以就缺少好多依賴。


這里我用了一個(gè)笨辦法解決的,就是把 express 的依賴粘貼過(guò)來(lái),重新 cnpm i下載一下就行了,或者缺哪個(gè)下那個(gè),如果各位大佬有更好的辦法,歡迎指導(dǎo)。謝謝~

"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"問(wèn)題二: 關(guān)閉服務(wù),刪除歷史包

關(guān)閉服務(wù)


到此這篇關(guān)于electron 引入node服務(wù)的文章就介紹到這了,更多相關(guān)electron 引入node服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何解決IONIC頁(yè)面底部被遮住無(wú)法向上滾動(dòng)問(wèn)題
Ionic 是目前最有潛力的一款 HTML5 手機(jī)應(yīng)用開(kāi)發(fā)框架。在開(kāi)發(fā)過(guò)程中我們同樣會(huì)遇到各種各樣奇葩的問(wèn)題。下面小編給大家?guī)?lái)了有關(guān)IONIC頁(yè)面底部被遮住無(wú)法向上滾動(dòng)問(wèn)題的解決方案2016-09-09
微信公眾號(hào)weixin-js-sdk使用方法總結(jié)
最近做了一個(gè)活動(dòng)頁(yè)面,需要自定義微信分享的標(biāo)題、詳情、縮略圖和url,使用到了jssdk,這篇文章主要給大家介紹了關(guān)于微信公眾號(hào)weixin-js-sdk使用方法的相關(guān)資料,需要的朋友可以參考下2022-12-12
前端實(shí)現(xiàn)json動(dòng)畫詳細(xì)過(guò)程(附帶示例)
這篇文章主要介紹了如何使用Lottie制作動(dòng)畫,包括創(chuàng)建動(dòng)畫文件.json、實(shí)現(xiàn)效果、在Git倉(cāng)庫(kù)中保存和共享、運(yùn)行動(dòng)畫以及在動(dòng)畫天堂下載和顯示JSON動(dòng)畫,文中通過(guò)代碼及圖文介紹的非常詳細(xì),需要的朋友可以參考下2025-02-02
JavaScrip如何安全使用Payment Request API詳解
這篇文章主要為大家介紹了JavaScrip如何安全使用Payment Request API詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
前端使用URL API實(shí)現(xiàn)高效的URL解析
在現(xiàn)代Web開(kāi)發(fā)中,URL是前端和后端交互的核心載體,本文將深入探討如何利用URL API實(shí)現(xiàn)URL的解析,構(gòu)建和操作,希望對(duì)大家有一定的幫助2025-04-04
JavaScript實(shí)現(xiàn)移動(dòng)端短信驗(yàn)證碼流程介紹
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)移動(dòng)端發(fā)送短信驗(yàn)證碼案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-10-10
xmlplus組件設(shè)計(jì)系列之分隔框(DividedBox)(8)
xmlplus 是一個(gè)JavaScript框架,用于快速開(kāi)發(fā)前后端項(xiàng)目。這篇文章主要介紹了xmlplus布局類組件之分隔框,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
js getBoundingClientRect使用方法詳解
這篇文章主要介紹了js getBoundingClientRect使用方法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
為body標(biāo)簽和document.body都添加點(diǎn)擊事件后僅Firefox彈出了兩次
為body標(biāo)簽和document.body都添加點(diǎn)擊事件后僅Firefox彈出了兩次,需要的朋友可以參考下。2011-04-04

