今天就跟大家聊聊有关shell脚本中怎么批量调用接口,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
脚本如下:
#!/bin/basha=0while [ $a -le 10 ]; do # length of ts is 13 required,Through the following way like this ts=`date +%s%N` ts=${ts:0:13} json='{"name" : "'$1$a'", "age" : '$2', "ts" : '$ts'}' a=$((a+1)) curl -k -H 'Content-Type:application/json;charset=utf-8' http://192.168.2.5:8080 -X POST -d "'$json'"doneAI代码助手复制代码
批量curl脚本
执行脚本
sh batch_curl.sh gege 21
执行结果
10次curl执行结果
该接口是用go语言提供的demo接口:如下:
目录结构:
目录结构
app.conf
copyrequestbody = true
controller.go
package controllerimport ( "github.com/astaxie/beego" "fmt")type SayHelloController struct { beego.Controller}func (this *SayHelloController) SayHello(){ fmt.Println("RequestBody is ", string(this.Ctx.Input.RequestBody)) this.Ctx.Output.Header("Content-type", "application/json;charset=utf-8") this.Ctx.Output.SetStatus(200) this.Ctx.Output.Body(this.Ctx.Input.RequestBody)}
router.go
package routerimport ( "github.com/astaxie/beego" "sayHello/controller")var hello = controller.SayHelloController{}func init() { beego.Router("/", &hello, "POST:SayHello")}
main.go
package mainimport ( "github.com/astaxie/beego" _ "sayHello/router" "fmt")func main() { fmt.Println(beego.BConfig.CopyRequestBody) beego.Run()}
看完上述内容,你们对shell脚本中怎么批量调用接口有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/liabio/blog/4420736