curl传递json文件过大而报错的解决方法

再使用curl传递过程中经常会因为json文件过大而发生报错无法进行传递,下面给大家介绍一下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

 

图片来源于互联网,如侵权请联系管理员。作者:路飞,如若转载,请注明出处:https://www.kufanyun.com/ask/1179.html

(0)
路飞路飞
上一篇 2021年11月1日 下午4:45
下一篇 2021年11月3日 下午3:34

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注