curl调用单笔接口结合shell循环实现批量操作

curl调用单笔接口结合shell循环实现批量操作shell脚本相关获取年月日时分秒来设置请求的时间echo$(date+%Y%m%d%H%M%S)请求中的随机数生成,根据请求报文格式得知

大家好,又见面了,我是你们的朋友全栈君。

shell脚本相关

使用shell脚本获取当前年月日时分秒,设置请求的时间

echo $(date +%Y%m%d%H%M%S)

curl调用单笔接口结合shell循环实现批量操作

使用shell脚本生成随机数,请求中的随机数生成(此处我设置截取8位,结合md5)

echo top -d 1 -n 1 |md5sum|cut -c 1-8

curl调用单笔接口结合shell循环实现批量操作

 shell脚本字符串分割,例如获取一行字符串,根据”;”分割,获取对应的值,使用特殊的一些符号需要转义,比如此处的分号就需要,若使用常规的符号例如逗号就无需转义

curl调用单笔接口结合shell循环实现批量操作

curl调用单笔接口结合shell循环实现批量操作 

结合上述的小知识点,使用curl发送post请求

准备要读取的文件,将所有请求一行一行进行区分,每笔交易的请求变量参数在一行里使用分隔符分割,此处我是用的是逗号

#!/bin/bash
for line in $(cat $1)
do
    first=`echo ${line} | cut -d , -f 1`
    second=`echo ${line} | cut -d , -f 2`
    third=`echo ${line} | cut -d , -f 3`
    curl "http://192.168.236.1:7001/api/user/addUser" -H "Content-Type:application/json" -X POST -d '{
	"requestHead":{
	    "tranSeqNo":"tran'"$(date +%Y%m%d%H%M%S)"'AAAA'"$(top -d 1 -n 1 |md5sum|cut -c 1-8)"'",
	    "tranTime":"'"$(date +%Y%m%d)"'",
	    "tranDate":"'"$(date +%H%M%S)"'"
	},
	"requestBody":{
	    "id":$first,
	    "name":"'"$second"'",
	    "adress":"'"third"'",
	    "remark":"插入说明"
	}
    }' |grep -w '"message":"ok"'
    if [ $? -eq 0];then
	echo "success"
    else
        echo $line
	echo "fail"
    fi
done

curl调用单笔接口结合shell循环实现批量操作

 再看看应用日志情况

curl调用单笔接口结合shell循环实现批量操作

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/163964.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Java代码生成器——基于模板快速生成web项目结构

    Java代码生成器——基于模板快速生成web项目结构功能介绍根据数据库表的元数据生成支持Rest、RPC协议的工程服务(标准化的代码分层结构工程)。加速新工程的建设。代码结构:生成代码的结构依赖于模板的定义。本工程中定义分为三个工程${projectName}-domain-api:接口层-RPC接口API工程${projectName}-domain:领域层-RPC接口实现(包含domain层+基础设施层)${proje…

  • 代码重构(三):数据重构规则

    代码重构(三):数据重构规则

  • currentstyle 织梦_织梦arclist标签支持高亮currentstyle属性方法

    currentstyle 织梦_织梦arclist标签支持高亮currentstyle属性方法找到include/taglib/arclist.lib.php第一步:查找:$channelid=$ctag->GetAtt(‘channelid’);替换:$channelid=$ctag->GetAtt(‘channelid’);$currentstyle=$ctag->GetAtt(‘currentstyle’);第二步:查找:$ct…

  • PyQt5(designer)入门教程

    PyQt5(designer)入门教程PyQt5入门教程注:这是当时闲着无聊写到githubpage的,在CSDN上也看了大佬们各种各样的教程跟疑难杂症解答,感觉我这个不放出来也有点可惜,希望各位能够从中收益吧。在网上看了不少关于PyQt5的中文教程,但是无外乎是过时了,讲解不清晰易懂,或者资料不完整。Youtube上面倒是有不少视频,但是不少Youtuber居然还在手写ui而不是利用方便快捷的QtDesigner。仅有的几个…

  • 集成学习-stacking算法

    众所周知,集成学习算法,它将多个弱分类器集成起来,以达到较高的分类准确率。常见的集成学习方法:boosting bagging stacking今天主要讲stacking.Stacking的基本思想将个体学习器结合在一起的时候使用的方法叫做结合策略。对于分类问题,我们可以使用投票法来选择输出最多的类。对于回归问题,我们可以将分类器输出的结果求平均值。…

  • 设计模式之工厂模式建议收藏

    一普通工厂模式1.类图2.代码实现#pragmaonce#include<iostream>usingnamespacestd;//抽象渲染类classIR

    2021年12月19日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号