场景模拟,
现有公司a中的内网系统OA 需调用公司b中的部署在外网的系统URL
由于公司a中的系统是内网系统,其所部属在的服务器是不能访问外网的。
但公司a中的员工通过安全认证后,客户端浏览器是可以访问外网的。
鉴于此种环境,首先考虑在OA系统中的jsp页面中通过jquery ajax异步调用公司b的外网系统地址URL。
公司b对应的URL 请求处理如下:
以json数据格式返回。
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String operate = request.getParameter("operate");
System.out.println("-----------------"+operate);
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
String callback = request.getParameter("jsonpCallback");
out.print(callback + "([ { publicKey:\"12312\"}] )");
out.flush();
out.close();
}
公司a的内网系统OA页面的调用逻辑如下:
通过jquery的ajax 方法实现。
不能用psot请求。
$.getJSON("URL?jsonpCallback=?",
function(json){
alert(json);
$.each(json, function(i){
//弹出跨域返回的数据信息
alert("json,publicKey:"+json[i].publicKey);
});
});