NodeJS 版本的支付宝免签接口实现脚本 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
thundernet8
V2EX    Node.js

NodeJS 版本的支付宝免签接口实现脚本

  •  1
     
  •   thundernet8 2017-02-09 16:17:57 +08:00 7542 次点击
    这是一个创建于 3233 天前的主题,其中的信息可能已经有所发展或是发生改变。

    已在个人博客中使用,项目地址 https://github.com/thundernet8/AlipayOrdersSupervisor

    支付宝免签约支付接口实现脚本 - NodeJS 版本

    功能介绍

    通过 NodeJS 爬取个人支付宝交易订单列表,分析订单中的备注,然后将订单数据推送至指定服务器,实现支付宝交易接口

    自带了简单的日志和邮件通知功能,对系统异常及时报告以及记录

    如何使用

      1. 请配置config.js中的参数,如邮件 SMTP ,推送服务器地址,以及pushStateSecretalipayCookies等。

    pushStateSecret用于数据的加盐保证安全以及验证推送来源的合法性

    pushAppIdpushAppKey暂时无用

    alipayCookies必须填写,这是为了爬取订单时保证登录状态

      1. 安装必要的 npm 包
    npm install 
      1. 使用forever循环运行脚本
    forever start index.js 

    脚本会每分钟爬取一次订单列表

      1. 服务端处理

    请参考脚本中利用pushStateSecret生成签名的方法,验证数据合法性后进行业务处理

    15 条回复    2019-09-04 02:01:13 +08:00
    ixiaoyui
        1
    ixiaoyui  
       2017-02-09 16:25:45 +08:00
    厉害了
    ColinWei
        2
    ColinWei  
       2017-02-09 16:38:24 +08:00
    支付宝 Cookie 会过期失效
    thundernet8
        3
    thundernet8  
    OP
       2017-02-09 16:44:59 +08:00
    @ColinWei 测试过一个礼拜到半个月不等的时间会过期,时间不固定的
    ColinWei
        4
    ColinWei  
       2017-02-09 16:51:01 +08:00
    @thundernet8 确实是不固定,我用免签将近 2 年了,有时候一天掉两回。 多数是半夜掉。
    v1024
        5
    v1024  
       2017-02-09 16:51:25 +08:00
    为什么要解析 HTML 呢,没有找到 JSON 格式的 API ?
    thundernet8
        6
    thundernet8  
    OP
       2017-02-09 16:53:29 +08:00
    @v1024 这些都是不正规的用途,支付宝怎么会给 json 接口呢
    v1024
        7
    v1024  
       2017-02-09 17:57:48 +08:00 via iPhone
    反正都是爬,他们自己都不用 json 吗...
    thundernet8
        8
    thundernet8  
    OP
       2017-02-09 18:05:49 +08:00
    @v1024 他们真没用,页面是服务端渲染好直接返回 html 的,并不是 AJAX 获取 JSON 部分渲染的
    wvidc
        9
    wvidc  
       2017-02-11 16:38:49 +08:00
    貌似有个根据订单号查询单笔交易详情的接口来判断是否付款成功
    thundernet8
        10
    thundernet8  
    OP
       2017-02-11 18:57:05 +08:00
    @wvidc 这个意义不大,我扫描订单能够从交易结果字符串判断该笔转账是否成功,而另一方面这个脚本是依赖备注的,支付宝的流水号没有意义,而且不是使用支付宝即时到账等正式接口,也不会有商户订单号参数
    coderfox
        11
    coderfox  
       2017-02-28 09:44:24 +08:00 via Android
    谢谢您的作品!作品很棒!
    要是能实现支付宝自动登录就好了,如果您没有时间我可以在六月份以后看看能不能实现一下,给您推 PR 。
    另外,请您确认一下,这是您本人在销售软件吗: https://webapproach.net/apsv-tutorial.html
    thundernet8
        12
    thundernet8  
    OP
       2017-02-28 13:55:03 +08:00
    @coderfox 那只是我开发的 WordPress 主题搭配的一部分,一般买了主题就会需要那个,咨询或者教程都是要收点费用的
    raykwok
        13
    raykwok  
       2017-06-27 16:06:10 +08:00
    我试了几个支付宝,只有一个支付宝可以成功使用,不知道为何?
    taru
        14
    taru  
       2017-08-10 01:23:39 +08:00
    感谢分享思路
    keeper001
        15
    keeper001  
       2019-09-04 02:01:13 +08:00
    现在已经实现云挂机了:www.yunmianqian.com
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5171 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 07:11 PVG 15:11 LAX 23:11 JFK 02:11
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86