如何在HTTPRequest Header中传递变量?

问题描述 投票:0回答:1

我想在我的 HTTPRequest 中添加带有变量的标头,但不接受它会给出错误,但是当我以引号传递直接字符串值时,它工作得很好。

她是第三个标头中的代码,我正在传递包含字符串值的变量校验和,但它不起作用,如果我传递直接字符串值,它就可以正常工作。

HttpRequest request1 = (HttpRequest) HttpRequest.newBuilder()
                    .uri(URI.create("https://api-preprod.phonepe.com/apis/pg-sandbox/pg/v1/pay"))
                    .header("accept", "application/json")
                    .header("Content-Type", "application/json")
                    .header("X-VERIFY",checksum)
                    .method("POST", HttpRequest.BodyPublishers.ofString("{\"request\":\"\"}"))
                    .build();
java http url servlets payment-gateway
1个回答
0
投票

最可能的解释是您没有重写

toString()
类中的
checksum
方法。尝试重写返回
String
校验和值的方法:

class Checksum {
 @Override
 public String toString() {
   return value;
 }
}

HttpRequestBuilder
根据一定的规则转换传入
header()
方法的对象,对于自定义类的对象,它只调用
toString()
方法。

© www.soinside.com 2019 - 2024. All rights reserved.