プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。
内容の保証はできませんのであしからずご了承ください。

2021/08/23

electron で HTTP リクエストを送る

update2021/08/26 event_note2021/08/23 2:28

Node.js の場合は request モジュールを使って HTTP リクエストを送っていましたが、electron のメインプロセスではどうやって送ればいいんだろうと思って調べてみたら、net モジュールというのがありました。

環境

  • electron v13.2.1

サンプル

const { net } = require('electron');
// リクエストの生成
let request = net.request({
    method: 'POST',
    url: 'https://example/',
    headers: {
        'Content-Type': 'application/json'
    },
});
let body = JSON.stringify({
    'sample': 'sample',
});
request.write(body);
// レスポンス受信時の処理
request.on('response', (response) => {
    console.log(`STATUS: ${response.statusCode}`)
    console.log(`HEADERS: ${JSON.stringify(response.headers)}`)
    response.on('data', (chunk) => {
        console.log(`BODY: ${chunk}`)
    })
    response.on('end', () => {
        console.log('No more data in response.')
    })
})
// リクエストの送信
request.end()

サーバー側が Node.js + Express の場合、Body の内容が受信できるようにするには以下の設定が必要です。