当前位置 : 主页 > 网络编程 > net编程 >

DotNET调用Java之100-Continue的坑

来源:互联网 收集:自由互联 发布时间:2023-09-07
场景:这段时间开发的时候遇到了需要NET调用java的restful api的情况,java端用的服务器是tomcat,框架是spring boot,net调用java端的接口之后只要java端的接口能返回正常的数据,net这边就果

场景:这段时间开发的时候遇到了需要NET调用java的restful api的情况,java端用的服务器是tomcat,框架是spring boot,net调用java端的接口之后只要java端的接口能返回正常的数据,net这边就果断超时了

 

这是java端返回的正常数据:

DotNET调用Java之100-Continue的坑_tomcat

 

然后net的就死在这儿了,

DotNET调用Java之100-Continue的坑_数据_02

 

好了,报错了:

DotNET调用Java之100-Continue的坑_数据_03

 

OK,我首先怀疑是Java的restful接口有问题,然后我就去用fiddler模拟请求一下:

DotNET调用Java之100-Continue的坑_数据_04

 

好的,fiddler能够正常返回数据,那就不是java的问题了,现在我们来比较一下连个请求的请求参数有什么不同:

DotNET调用Java之100-Continue的坑_tomcat_05DotNET调用Java之100-Continue的坑_tomcat_06

 

好的,我们发现了这个:Expect: 100-continue,这是什么鬼?查询一下:

DotNET调用Java之100-Continue的坑_java_07

 

好的,找到症结所在,我们的tomcat不支持这么干?好的,在代码中加上这一句:

DotNET调用Java之100-Continue的坑_数据_08

 

 

再来一次,成功获取数据:

DotNET调用Java之100-Continue的坑_tomcat_09

网友评论