x一个月一次x一个月一次x一个月一次x一个月二次x一个月三次x一个月四次x一个月五次x一个月六次x一个月七次x
- 一个八个一x一个九个一x一个十个一x一个十个一x一个十个一x一个十个一x一个十个一x *
主文件. js
const { app, BrowserWindow, ipcMain, net } = require('electron');
const path = require("path");
const remoteMain = require('@electron/remote/main');
remoteMain.initialize();
let text;
let win;
function handleData()
{
const request = net.request({
method: 'GET',
protocol: 'http:',
hostname: 'some IP address',
port: some port,
path: '/some path',
redirect: 'follow'
});
request.on('response', (response) => {
console.log(`STATUS: ${response.statusCode}`)
console.log(`HEADERS: ${JSON.stringify(response.headers)}`)
response.on('data', (chunk) => {
// console.log(`${chunk}`)
text = `${chunk}`;
console.log(text); // this prints the json data on console.
/ tried return text; but same error.
})
response.on('end', () => {
console.log('No more data in response.')
console.log(text);// this prints the json data on console.
return text;
})
})
request.end()
};
const createWindow = () => {
win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
preload: path.join(__dirname, 'preload.js'),
},
})
remoteMain.enable(win.webContents)
}
function openIndex() {
win.loadFile('HTML/index.html');
win.webContents.openDevTools();
}
ipcMain.handle("request:get", handleData);
app.whenReady().then(() => {
createWindow();
openIndex(); app.on("activate", function () {
if (BrowserWindow.getAllWindows().length === 0) createWindow();
});
});
app.on("window-all-closed", function () {
if (process.platform !== "darwin") app.quit();
});
预加载. js
const {contextBridge,ipcRenderer} = require("electron");
contextBridge.exposeInMainWorld('electronAPI',{
getData: () => ipcRenderer.invoke("request:get", message)
})
渲染器. js(索引. js)
const btnclick = document.getElementById("PFLIoT");
btnclick.addEventListener('click', () => {
console.log("Hello from Machine List IOT");
const response = window.electronAPI.getData();
console.log(response);
//Also tried this code
//window.electronAPI.getData().then((data) => {
//console.log(data);})
个
x1米20英寸1x
1条答案
按热度按时间vbkedwbf1#
我终于得到了答案。我只需要在preload.js文件中再添加一行