如何在http请求标头中发送签名

时间:2014-06-10 15:31:44

标签: java bytearray httprequest signature

我想在http标头中发送签名。所以我有测试应用程序生成签名作为字节数组,我想打印它并插入请求标头,但不知道将字节数组转换为字符串,然后在我的过滤器中解析此输入字符串的最佳方法。

1 个答案:

答案 0 :(得分:2)

byte[]标题中发送签名时,将String转换为http

byte[] signatures = ...
String signatureAsString = BaseEncoding.base64().encode ( signatures );

Servlet过滤器

中的Http标头中获取签名
// ServletRequest request
HttpServletRequest req = (HttpServletRequest)request;   
String signature = req.getHeader("SIGNATURE");
byte[] bytes = BaseEncoding.base64().decode ( signature  );

我使用Google Guava BaseEncoding进行编码/解码。您可以使用任何Base64Base16编码API。