zoukankan      html  css  js  c++  java
  • 模拟开户接口,使用shell脚本实现批量用户开通

    1、目的

    通过模拟接口方法,实现批量用户开通

    2、分析

    A、接口含body和head部分,其中body中的某些变量为必填字段,包含用户的信息,接口可整理成body.xml、head.xml文件。

    B、用户信息清单可以整理成list.txt文件。

    C、逐行读取list.txt文件,将其用户信息对应替换到body.xml文件中。然后使用curl方法发送接口信息。

    D、将开户结果输出至result.log文件。

    3、脚本实现

     1 #! /bin/sh
     2 
     3 Bxml=`dirname $0`/body.xml
     4 Hxml=`dirname $0`/head.xml
     5 File=`dirname $0`/list.txt
     6 Rfile=`dirname $0`/result.log
     7 
     8 echo "Error output ${Rfile}."
     9 echo "START ..."
    10 echo "" > ${Rfile}
    11 
    12 while read LINE; do
    13 
    14     tel=`echo $LINE | awk '{print $1}'`
    15     stbid=`echo $LINE | awk '{print $2}'`
    16 
    17     Phone=${tel}
    18     Stbid=${stbid}
    19     Date=`date +20%y%m%d%H%M%S`
    20     PkgSeq=${Date}
    21     Seq=`awk 'BEGIN{srand();print rand()*1000000}'`
    22 
    23 
    24     sed -i  "s/<PkgSeq>.*</PkgSeq>/<PkgSeq>${Date}</PkgSeq>/g" ${Bxml}
    25     sed -i  "s/<IDV>.*</IDV>/<IDV>${Phone}</IDV>/g" ${Bxml}
    26     sed -i  "s/<OprT>.*</OprT>/<OprT>${Date}</OprT>/g" ${Bxml}
    27     sed -i  "s/<Seq>.*</Seq>/<Seq>${Seq}</Seq>/g" ${Bxml}
    28     sed -i  "s/<StbID>.*</StbID>/<StbID>${Stbid}</StbID>/g" ${Bxml}
    29     sed -i  "s/<Account>.*</Account>/<Account>${Phone}</Account>/g" ${Bxml}
    30     sed -i  "s/<EffetiTime>.*</EffetiTime>/<EffetiTime>${Date}</EffetiTime>/g" ${Bxml}
    31 
    32     sed -i  "s/<TransIDOTime>.*</TransIDOTime>/<TransIDOTime>${Date}</TransIDOTime>/g" ${Hxml}
    33 
    34 
    35     curl -v  --connect-timeout 3 -F "xmlhead=@head.xml;type=text/plain; charset=UTF-8" -F "xmlbody=@body.xml;type=text/plain; charset=UTF-8" http://IP:6600/bossManagement 2>/dev/null
    36     ret=$?
    37     if [ $ret -ne 0 ]; then
    38         echo "$LINE error($ret)"
    39         echo "$LINE error($ret)" >> ${Rfile}
    40     fi
    41         sleep 2
    42 done < ${File}
    43 
    44 
    45 echo "END"
  • 相关阅读:
    如何把阿里图标库的图标生成代码并应用于自己的项目
    【记事件】
    极光推送,为什么IOS有的手机一直收不到推送。
    浮点型的数据对比。
    MySQL通过show processlist查看项目的mysql写的有问题
    thinkPHP5实现简单的多图上传
    mac终端运行/终止jar包
    referer参数和addslashes()函数的骚路子
    小技巧|addslashes绕过
    团队博客七
  • 原文地址:https://www.cnblogs.com/wenquanli/p/9717162.html
Copyright © 2011-2022 走看看