对于我的项目,我使用hybris v18.11,并且使用Stripe支付网关,我需要使用Stripe的Charge对象来获取rawJsonObject,该对象是通过gson库提供的。
this.rawJsonObject = ApiResource.GSON.fromJson(this.getLastResponse().body(), JsonObject.class);
我在hybris项目中获取了this.getLastResponse().body()
填充的字符串值,并尝试使用gson手动转换该值,结果成功。我能够在非hybris项目中获取rawJsonObject(正常的maven/gradle项目)通过hybris项目获取相同的内容时,返回的rawJsonObject为空{}。我尝试在hybris和非hybris项目中使用gson v2.8.2、v2.8.6和v2.5,每次我在非hybris项目中收到正确的响应,而hybris项目中的JSON对象为空。我尝试在hybris项目中使用Stripe-java-20.47.0.jar和Stripe-java-20.36.0.jar,得到了相同的结果,空rawJsonObject。任何线索都将是有帮助的,如果我错过了任何东西,或者如果我需要测试任何其他东西,请告诉我。
1条答案
按热度按时间q5iwbnjs1#
这是100%的时间发生还是间歇性的?我想知道响应体是否因为某种原因而发生变异,变得不可用。
您是否尝试过使用内置的
getRawJsonObject()
(source)?它会在第一次访问响应时记录这一点,因此,如果流被使用,它可能会为您保留在这里。