我将填充一个有链接的表,每个链接指向不同的case id,当点击该链接时,我需要在我的java方法中验证第三方url并需要允许浏览器打开安全页面。
任何关于如何实现这一目标的指示都非常有用。
感谢。
答案 0 :(得分:1)
是的,这可以通过一个简单的serlvet来实现。 假设您在表中有href链接列表 1.点击每个href链接后,将其指向您的servlet。
Ex:&lt; a href =“/ yourServlet.do?thirdPartyURL=actual3rdPartyURL">actual3rdPartyURL< / a&gt;
注意:在浏览器地址栏中显示URL不是一个好习惯。 正如您所提到的那样,您就是填充此URL的人,使用hashmap存储这些URL并使用Case ID映射它并重定向它。希望你能得到完整的信息。
请查看以下示例,如果您需要更多信息,请告知我们
/**
*
*/
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
PrintWriter out = response.getWriter();
/**
* Assume that this is the map you are getting from third party
* This map holds two value pairs
* Map<CaseID, URL>
*/
Map<String, String> lstURLS = new HashMap<String,String>();
lstURLS.put("CASEID1", "https://www.abc.com/abc1");
lstURLS.put("CASEID2", "https://www.def.com/def");
lstURLS.put("CASEID3", "https://www.egh.com/egh");
/**
* Assume that the request parameter caseID,
* will provide you the case id which was selected by the user
* from the provided table of URLS
*/
String userProvidedCaseID = request.getParameter("caseID");
System.out.println("MySerlvet | caseID | "+ userProvidedCaseID);
/**
* Retrieve the URL from the list of third party URL's
*/
if(null != userProvidedCaseID){
String thirdPartyURL = lstURLS.get("userProvidedCaseID");
if(null != thirdPartyURL){
response.sendRedirect(thirdPartyURL);
}else{
out.print("No Case ID found / Error message");
}
}else{
out.print("No Case ID found / Error message");
}
}