Http请求URL中带有json字符串,导致请求406

之前有个需求调用对方的接口,但是由于请求URL中带有json数据,导致406 URL:

https://xxx.xx.com/xx/vip/vipSrfCgi?serviceName=xxxxx&requestBody={
          
   "appid":"90089","orderid":"hth123456789","uin":"1635618490","conn_appid":"","time":"1615367453","token":"771e74bfc8a3940b094cecdf37957b80"}&__debugid=1158542577

请求报错: 查了挺多地方都没有找到,直到有一次在服务器curl才看出猫腻,对json字符串做了处理 处理后:

curl -H Content-Type:application/json -x 10.107.100.64:9090 -X GET "https://xxx.xx.com/xx/vip/vipSrfCgi?serviceName=xxxxx&requestBody=\{
          
   "appid":"108017","orderid":"hth123456789","uin":"1635618490","time":"1615452087","token":"a6950569a76f8dc2398451fd2088e825"\}&__debugid=1158542577"

(这里我是转义过的,但是贴出来后总是不对,这里要对双引号进行转义)

因为我是用restTemplate发请求的,我们主要对URL进行处理下:

经验分享 程序员 微信小程序 职场和发展