如何传递HashMap作为参数

notPercival:

我有一个类API,您可以在其中设置并获取以后在API调用中使用所需的信息,我想使下一个要使用此API的人更轻松。

因此,不要这样做:

api.addURL("urltorequesttoken");
api.addHeader("client_id","sdfsfsdfsd")
   .addHeader("client_secret","sdfsdfsfsfd")
   .addHeader("grant_type","client_credentials")
   .addHeader("scope","READ");
api.addBody("bodyToSend")

我想做这个:

String URL = "";
URL = "put your URL here";

因此,我将URL和其他变量作为参数传递给另一个方法,在该方法中我将执行第一段代码中的操作,因此它们不需要了解API类及其方法,但是我不知道如何处理哈希图,我该如何做到用户友好?然后将其作为参数传递,并且接收此信息的方法应该具有什么类型的参数?(Map <字串键,字串值>)或(字串键,字串值)?

编辑(添加):

因此,有一个DEV要创建的类,我们将其称为CreateToken,因此该类当前具有:

api.addURL("urltorequesttoken");
    api.addHeader("client_id","sdfsfsdfsd")
       .addHeader("client_secret","sdfsdfsfsfd")
       .addHeader("grant_type","client_credentials")
       .addHeader("scope","READ");
    api.addBody("bodyToSend")

还有一个名为BASE的类,我在其中做核心服务,为了使他们在创建类时更轻松,我不想在他们的类上放那个代码块,而是在我的类上放,所以他们要做的是设置URL,标头和正文(用于POST方法),因此,代替这个:

api.addURL("urltorequesttoken");

他们会这样做:

URL = "urltorequesttoken";

在他们的班上有一种方法可以发送给我或让我获取。

fillAPICallInfo(URL, headers, body);

我将在BASE类上收到该消息,但我不知道如何处理Map变量,不知道如何使DEV变得简单,因此它们只是将键和值放进去,以及如何在我的班上接收它(作为映射或字符串)?

在:

因此,您只需传递一个Map<String, String>as参数即可:

public void fillAPICallInfo(String url, Map<String, String> headers, String body) {
  // Assuming there is an instance of class DEV named api available
  api.addURL(url);
  headers.forEach((h, v) -> api.addHeader(h, v));
  api.addBody(body);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章