美文网首页
Electron开发实战之17-jslogin and supe

Electron开发实战之17-jslogin and supe

作者: 1bdd9a4a74a2 | 来源:发表于2018-08-08 04:18 被阅读179次

    源码 j源码 j-step-c17相关视频

    这一节我们来做jslogin

    请求参数

    通过下面这张图,我们可以得到jslogin的请求参数:
    url: 'https://login.wx.qq.com/jslogin'
    method: GET
    query: { appid, redirect_uri, fun, lang, _ }

    jslogin

    那么query里面的这些参数哪里来的呢?老套路,我们看源码:

    API_jsLogin

    先看这句:
    API_jsLogin: "https://" + a + "/jslogin?appid=wx782c26e4c19acffb&redirect_uri=" + encodeURIComponent(location.protocol + "//" + location.host + "/cgi-bin/mmwebwx-bin/webwxnewloginpage") + "&fun=new&lang=" + o,

    • 很清楚appid=wx782c26e4c19acffbfun=new这两个是固定值
    • lang=" + o, o又是什么呢?
      在控制台跑一下这段代码,得到ozh-CN
    console
    • 等等,这个 _参数是什么鬼,这个参数其实是jquery.ajax方法带过来的,目的是通过在url的查询参数字符串后面附加_=[时间戳]来禁用缓存,有时间你可以看看官方文档,也可以通过单步调试来窥探一下

    • 最后说说redirect_uri,如果我告诉你可以不要它你信吗?别问我为什么,实践是检验真理的唯一标准,你可以试试 :)

    superagent

    思考一个问题,我们可以从前端直接向微信后台请求数据吗?

    fetch

    请求不成功,因为这涉及到浏览器的同源策略与跨域问题。

    幸运的是我们的Electron集成了node,让我们可以愉快的和微信后台通信

    我们来安装一个superagent依赖,负责网络资源请求

    yarn add -D superagent
    

    (前面几个章节逼逼叨叨这么多,会不会太啰嗦,大家见谅哈...)


    老司机带你飞,下面正式写代码

    现在你的项目中应该有个renderer\robot\webwxapi\index.js文件


    上一节 Electron开发实战之16-eslint and jest
    目录
    下一节 Electron开发实战之

    相关文章

      网友评论

          本文标题:Electron开发实战之17-jslogin and supe

          本文链接:https://www.haomeiwen.com/subject/rzozvftx.html