Electron中文文档

新手 685983304  中级 642625556 高级 602866851 Q群区别? 征集友情链接公告

推荐版:3.0.10   测试版:4.0.0-beta.8   极客版:4.0.0-nightly.20181010  

网络

使用Chromium的原生网络库发出HTTP / HTTPS请求

线程:主线程

net 模块是一个发送 HTTP(S) 请求的客户端API。 它类似于Node.js的HTTPHTTPS 模块 ,但它使用的是Chromium原生网络库来替代Node.js的实现,提供更好的网络代理支持。

下面是一个非详尽的列表, 用于说明为什么使用 net 模块而不是原生Node. js 模块:

  • 系统代理配置的自动管理, 支持 wpad 协议和代理 pac 配置文件。
  • HTTPS 请求的自动隧道。
  • 支持使用basic、digest、NTLM、Kerberos 或协商身份验证方案对代理进行身份验证。
  • 支持传输监控代理: 类似于Fiddler代理,用于访问控制和监视。

net 模块 api 被专门设计为尽可能地模仿的Node. js api。 API 组件 (包括classes、methods、properties和event names) 与Nodejs中常用的类似。

例如, 下面的示例快速显示如何使用 net API:

const {app} = require('electron')
app.on('ready', () => {
  const {net} = require('electron')
  const request = net.request('https://github.com')
  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('response请求中没有更多数据。')
    })
  })
  request.end()
})

顺便一提, 它几乎与你经常使用的Node.js的 HTTP / HTTPS 模块完全相同。

只有在应用程序发出 ready 事件之后, 才能使用 net API。尝试在 ready 事件之前使用该模块将抛出一个错误。

方法

net 模块具有以下方法:

net.request(options)

  • options (Object | String) - ClientRequest 构造函数的选项.

返回 ClientRequest

使用 options 创建 ClientRequest 实例, 这些选项直接转发到 ClientRequest 的构造函数。 net.request 方法将根据 options 对象中的指定协议方案, 去发送安全和不安全的 HTTP 请求( both secure and insecure HTTP requests)。



相关npm包集合




相关站点资源





官方指南

常见问题 (FAQ)

指南和教程

详细教程

API 参考

自定义 DOM 元素:

主进程可用的模块:

渲染进程(网页)可用的模块:

两种进程都可用的模块:

开发

  • electron 如何禁用页面刷新事件?
  • electron 3.x 系统新增加的页面加载函数 loadFile
  • JS开发者社区

    和大家在一起

    新手/1元新手 685983304 
    中级/5元 中级 642625556
    高级/50元 高级 602866851