2017-10-20 53 views
-1

我想在一个特定的API HTTP调用传递“主机名”“端口”,“集群”。如何传递网址中的变量? 任何帮助,非常感谢。在Java中传递API url中的变量。

代码:

\t int port = Integer.parseInt(prop.getProperty("sd.port")); 
 
\t System.out.println("port no : " + port); 
 
\t String hostName = prop.getProperty("sd.hostname"); 
 
\t System.out.println("host name : " + hostName); 
 
\t 
 
\t String cluster = app_prop.getProperty("ClusterName"); 
 
\t System.out.println("cluster name is : " + cluster); 
 
\t 
 
\t 
 
\t 
 
\t try { 
 

 
\t \t 
 
\t String url ="https://hostName:port/api/scanCluster?cid=cluster&mode=1";

在上述网址的看到,我试图通过 “主机名”, “端口” 和 “集群”。请帮忙 。

+1

您已经使用带有'+ port','+ hostName',附加的字符串的例子'+ cluster'而且你只需要为网址做到这一点。 –

回答

3

使用字符串连接(与+运营商)以字符串常量和变量结合:

String url = "https://"+hostname+":"+port+"/api/scanCluster?cid="+cluster+"&mode=1"; 
+0

备注:很多人说,你应该使用StringBuffer/StringBuilder而不是+ concatination。这仅适用于在循环或更复杂的构造中构建字符串时的情况。在这种情况下,你可以绝对地使用+ concatination,因为编译器会优化代码并使用StringBuilder。你可以通过检查ByteCode来查看。 – Korashen

+0

@ f1sh谢谢。我为自己感到羞愧。对我而言,这是愚蠢的。 – jane

+0

@Korashen感谢您的信息。 – jane