再使用curl传递过程中经常会因为json文件过大而发生报错无法进行传递,下面给大家介绍一下curl传递json文件过大而报错的解决方法:
下面shell 第一步获取token, 然后用token给服务端发送json文件, 正常json文件小时下面shell可以正常运行。
#!/bin/bash # access_res=$(curl "http://192.168.1.1:30100/api/v1/ability_sub/external/getToken?appId=d53e9b4083a8577e31dae685305fd032&secret=27766999 0d60d4616a8ae1fd9d6fc114") access_token=$(echo $access_res |cut -d":" -f6 |cut -d"}" -f1|sed s/\"//g) accress_url='curl -i -X POST -H "Content-Type:application/json" -d @/opt/accesstoken/test.json http://192.168.1.1:30202/app-l59q59yp3po2 7l-store/quality/faultOrderQ?'${access_token} echo $accress_url $accress_url
使用curl 数据时,当POST的数据大于等于1024字节,curl并不发起POST请求。需要分两步。
1.发送header中包含一个Expect:100-continue的请求,并查看Server是否愿意接受数据。
2.接受Server返回的100-continue回应后,才可数据POST到Server。
服务端默认是开启接收json的,这时去掉发送前询问,增加-H “Expect:“,如下:
accress_url='curl -i -X POST -H "Expect:" -H "Content-Type:application/json" -d @/opt/accesstoken/test.json http://192.168.1.1:30202/app-l59q59yp3po2 7l-store/quality/faultOrderQ?'${access_toke
这样增加定时任务就可以了
以上是关于“curl传递json文件过大而报错的解决方法”的介绍,如需购买云服务器,推荐使用酷番云,独享IP、独享云服务器齐备,弹性灵活各种配置任您选购,最低只需要43/月,免费帮助配置环境,挂载磁盘等,协助处理简单问题,同时提供快速0元备案,让您快速运营,详情请咨询酷番云。
产品选购地址:
https://www.kufanyun.com/server/buy.html