免责声明:我不是Java 开发人员,所以这是基于我(非 Java 开发人员)对源代码的阅读。我也没有使用您引用的示例。
public String deserialize(String tokenString)
正在从 Base64 解码为字符串,并且
- 看起来它只是为有效载荷(
String jwtPayloadSegment = pieces[1];
)和
- 不是为签名(它本来是
pieces[2]
)解析的private String[] splitTokenString(String tokenString)
如上所述,我不是 Java 开发人员,也不使用示例。代码看起来像(再次注意我的免责声明)它只是如何创建请求(发送到 Google)的示例,而不是作为处理程序让您的侦听器验证来自 Google 的传入回调。
示例代码应该仍然有助于执行此操作,因为验证时的过程类似 - re: (re) build JWT 签名并将其与传入 POST 请求中的已解析签名进行比较。
看起来像示例:
- 在 index.jsp 中,处理 GET 请求 (
Main_Servlet.java
) 并构建 JWT
- 调用 Google 方法发送 POST 请求以启动购买流程
我可以看到示例中没有代码供您的听众处理来自 Google 的包含订单 JWT 的帖子 - 您需要编写该代码(是的,您需要验证来自 Google 的 JWT)。
Hth - 如果我对源代码的阅读有误,我可能是。