添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Electron 客户端发起请求传参

 this.$axios.get(`/alipay/pc/bankSale/pay/${this.data.id}`).then((res) => {
          window.shell.openExternal(`${WEB_URL}/aliPayClient?htmlData=` + this.urlEncode(res))
          // this.$router.push({ path: '/aliPay', query: { htmlData: res } })
   urlEncode(str) {
      var s = ''
      if (str.length == 0) {
        return ''
      s = str.replace(/%/g, '%25')
      s = s.replace(/&/g, '%26')
      s = s.replace(/ /g, '%20')
      // s = s.replace(/\\+/g, '%2B')
      // s = s.replace(/\//g, '%2F')
      s = s.replace(/=/g, '%3D')
      s = s.replace(/#/g, '%23')
      return s

web项目正常获取参数即可

<template>
  <!-- <div v-html="payGateWay">{{ payGateWay }}</div> -->
    <div v-html="payGateWay"></div>
</template>
<script>
export default {
  name: 'AliPay',
  auth: false,
  components: {},
  data() {
    return {
      payGateWay: '支付中请稍后',
  computed: {},
  mounted() {
    this.payGateWay = this.$route.query.htmlData
    console.log('object :>> ', this.payGateWay)
    this.$nextTick(() => {
      document.forms[0].submit()
      // console.log('document.forms[0] :>> ', document.forms)
  methods: {},
</script>
<style scoped lang="less"></style>
与Google Chrome和其他Chromium浏览器相比,RAM使用量更少(您可以清理缓存) 浏览器的系统要求与Electron.js相同,因此这是所有操作系统都必须具有64位。 支持其他架构,但发行版中不支持。 Linux 7及更高版本 还未公布您需要从源代码运行。 Ubuntu 16.04 浅顶软呢帽21 Debian 8 该浏览器位于测试版中。 如果您真的要测试它,请克隆此存储库,安装npm i && npm i -g electron electro并使用命令electron .运行electron . 或npm start 如果您能解决所有可能的错误并提高性能,我们将不胜感激! 通过注册的自定义协议使你的应用程序与操作系统进行集成,并通过链接或请求的方式进行通信。通过定义协议和在操作系统中注册,你的应用程序能够被唤起并接收数据,以实现与浏览器或其他应用程序的交互。 有些时候网页中某些功能受到浏览器的限制,需要调用桌面客户端完成,例如在网页端使用迅雷链接下载文件,可以直接启动本地的迅雷客户端进行下载。那么使用Electron构建的桌面客户端如何实现被网页调启和传参呢? Windows系统中是通过注册伪协议来实现的,在注册表中添加URL Protocol来实现伪协议。在Electron实现伪协议主要有两种方式: 1.通过setAsDefaultProtocolClient注册协议 根据Electron文档中的介绍,可使用app.setAsDefaul 场景用HTML和CSS和JS构建跨平台桌面应用程序的开源库Electron的介绍以及搭建HelloWorld:在上面搭建起来Electron的HelloWorld程序后,怎样对程序进行调试。Electron分为渲染进程和主进程。渲染进程:用户所看到的web界面就是由渲染进程描绘出来的。包括html,css和js。主进程:Electron 运行 package.json 的 main 脚本的进程被称... if (!app.isPackaged) { // 如果是开发阶段,需要把我们的脚本的绝对路径加入参数中 args.push(path.resolve(process.argv[1])) // 加一个 -- 以确保后面的参数不被 Electron 处 var electron = require('electron') var app = electron.app var BrowserWindow = electron.BrowserWindow var mainWindow = null app.on('ready', () => { mainWindow = new BrowserWindow({ width: 400, height: 300, webPre