公司项目有遇到这个问题,调用别人的接口。真是神tm Internal Error。这个问题百度都查不到。我可能是历史上唯一出现这个问题的女纸。
其实一般遇到这个问题,Internal Error内部错误,就是服务端那边接收你的参数,然后判断你的参数,不给通过,但是具体什么原因也没告诉你。
【解决办法】
对方给的示例代码中的参数写死的,运行没问题的,到项目上跑起来就报错了。于是我拿写死的参数和项目发送的参数作对比。还真是我参数传错了。
就是
//项目代码

public void func(){
 
  Item item  = new Item();
  String id  = "123";
  Date date = new Date();
  SimpleDateFormat format =  new SimpleDateFormat("yyyyMMddHHmmssSSS“);
  String timeStr =  format.format(date);
  String issue = timeStr.subString(14);
  item.setId(id);
  item.setTimeStr(timeStr);
  item.setIssue(issue);
  webService.send(item);
}
 

//对方给的示例代码

  Item item  = new Item();
  item.setId("123");
  item.setTimeStr("20210114183501");
  item.setIssue("20210114183501");
  webService.send(item);

发现问题了么?我的项目代码中timeStr的长度是多少?issue的长度是多少?
示例代码中给出的timeStr长度是14,issue和timeStr是一样的,长度也是14;
我的项目代码运行起来,timeStr是16位数,然后,我的issue给截掉了,是前面14位截掉了。。。所以issue的长度是3。。。
这怎么可能通得过?所以人家服务端给你报了内部错误!
于是我修改了一下代码,如下:

public void func(){
 
  Item item  = new Item();
  String id  = "123";
  Date date = new Date();
  SimpleDateFormat format =  new SimpleDateFormat("yyyyMMddHHmmssSSS“);
  String timeStr =  format.format(date).subString(0,14);
  String issue = timeStr;
  item.setId(id);
  item.setTimeStr(timeStr);
  item.setIssue(issue);
  webService.send(item);
}

如此,问题得以解决!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐