`
y806839048
  • 浏览: 1126136 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

ajax跨域

    博客分类:
  • Ajax
阅读更多

ajax有跨域:不同项目名即跨域,ajax解决跨域访问的本质就是java回调js

在跨域请求的时候,如果没有解决shrio是拿不到其他系统的登录信息(可以调用对方项目的方法(ip相同项目名不同)),如果ip也不同那么方法都调用不了

1,jsonp回调

2,Java回调js(jsonp本质)

A:

 

回调的函数服务端也要声明

http://blog.csdn.net/yttea/article/details/51549736

http://chenshengzun.iteye.com/blog/1847629

function getSeeion(){

$.ajax({

url:"http://localhost:8081/web/siteindex.do/top",

type:"post",

dataType:"jsonp",

//cache:false,

async:true,

data:{"accountid":"21","path":"${TopPath}"},

jsonpCallback: "jsonpcallback",

success: function (response) {

alert(response);

        }

 

});

function jsonpcallback(data){

alert(data);

}

}

 

 

B:下面这种没有跨域问题

<script src="http://localhost:8081/web/siteindex.do/top">

 //返回的会放在这个里面

</script>

这种可以结合Java回调js(jsonp本质)用response.writer();把要回调的函数及其参数返回打出,即可回调,

前提是jsp已写好被回调的函数(jsonp的本质)

EsteelHome项目:

function jsonpcallback(data){

login11(data);

}

function login11(name){

isLogin=true;

document.getElementById("hyy").innerHTML=name;

document.getElementById("ydl").style.display="";

document.getElementById("wdl").style.display="none";

}

///这个要注意掉的时机,否则会引起调用过早,但是页面没有渲染出来,找不到hyy元素

 

<script type="text/javascript"  src="http://localhost:8081/web/siteindex.do/webTop">

 

</script> 

 

Esteelweb项目:

@RequestMapping(value = "/webTop")

@ResponseBody

public void webTop(Model model,HttpServletRequest request,HttpServletResponse response, HttpSession session) throws IOException {

 

/*CusUserBean cusUserBean = CASUtil.getCusUserBean();*/

CusFirmBean cusFirmBean= CASUtil.getCustomer();

//request.getSession().setAttribute(Constants.SESSION_FIRM, cusUserBean);

response.setCharacterEncoding("UTF-8");

if(cusFirmBean!=null){

 

response.getWriter().write("jsonpcallback"+ "('"+cusFirmBean.getCustomerName()+"');");//moduleId

}

else{

response.getWriter().write("jsonpcallback"+ "();");//moduleId

}

// return "frame/index.p";

}

 

 

 

C:用Java写一个代理

发起http请求

 

分享到:
评论

相关推荐

    ajax跨域解决办法

    【AJAX跨域解决办法】 在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下更新部分网页的技术。然而,由于浏览器的同源策略限制,AJAX请求通常只能发送到与当前页面同一源的...

    Spring Boot Redis Session 共享(Ajax 跨域)

    本教程将详细讲解如何在Spring Boot项目中利用Redis来存储和共享Session,并解决Ajax跨域问题。 首先,我们需要理解Spring Boot中的Session管理。默认情况下,Spring Boot使用内存中的HttpSession来存储用户会话...

    demo跨域ajax_DEMO_ajax跨域_

    本示例“demo跨域ajax_DEMO_ajax跨域”着重解决C#后端与JavaScript前端之间的跨域限制。这里我们将深入探讨什么是跨域、为何会产生跨域问题以及如何通过C#和Ajax实现跨域通信。 首先,我们需要了解什么是跨域。根据...

    Javascript跨域和Ajax跨域解决方案

    JavaScript跨域和Ajax跨域是Web开发中常见的问题,尤其在进行前后端分离或API调用时,由于浏览器的同源策略限制,不同域名、协议或端口的资源请求会被阻止,这就是所谓的“跨域”。本文将深入探讨JavaScript和Ajax...

    ajax跨域调用wcf实例

    以下是实现AJAX跨域调用WCF服务的具体步骤和相关知识点: 1. **开启WCF服务的跨域支持**:在WCF服务的配置文件(通常是ServiceName.svc.cs或IServiceName.cs)中,需要启用跨域资源共享(CORS)。这可以通过添加`...

    Ajax跨域详解与代码

    **Ajax跨域详解** 在Web开发中,Ajax(Asynchronous JavaScript and XML)技术允许我们实现页面的异步更新,无需刷新整个页面即可获取并展示新数据。然而,由于浏览器的安全策略,同一源策略(Same-Origin Policy)...

    Ajax跨域访问解决方案

    **Ajax跨域访问解决方案** 在Web开发中,Ajax(Asynchronous JavaScript and XML)技术被广泛用于实现页面的异步更新,提升用户体验。然而,由于浏览器的同源策略限制,Ajax请求只能向同源(协议、域名和端口相同)...

    cors技术解决ajax跨域

    **CORS技术详解:解决AJAX跨域问题** 在Web开发中,由于浏览器的同源策略限制,AJAX请求只能向同一源(协议+域名+端口)发送,这在跨域请求时会遇到障碍。为了解决这个问题,CORS(Cross-Origin Resource Sharing,...

    利用JQuery jsonp实现Ajax跨域请求json数据

    本篇文章将详细讲解如何利用jQuery的jsonp方法实现Ajax跨域请求,以及如何在服务器端使用.Net的*.handler和WebService来返回JSON数据。 首先,理解JSONP的基本原理。JSONP是一种非官方的协议,通过动态创建`...

    解决ajax跨域问题

    ### 解决Ajax跨域问题 在现代Web开发中,跨域问题经常出现并困扰着开发者。根据提供的文件信息,本文将详细介绍如何通过JSONP等方法解决Ajax跨域问题。 #### Ajax与同源策略 首先,我们需要了解为什么会出现跨域...

    解决ajax跨域请求问题

    本文将深入探讨如何解决Ajax跨域请求的问题。 首先,理解“同源策略”是解决问题的关键。同源策略是浏览器为了保障网络安全而设定的一种机制,它禁止了一个源的文档或脚本访问另一个源的属性,这里的“源”指的是...

    怎样实现Ajax 跨域访问

    ### 如何实现Ajax跨域访问 在Web开发中,由于同源策略的限制,JavaScript只能对同源的页面进行操作,不能对不同源的页面进行请求。然而,在实际的应用场景中,经常会出现需要向不同域名下的服务器发起请求的情况。...

    Ajax跨域访问(ASP.NET Web)

    本教程将重点讲解如何在ASP.NET Web环境中处理Ajax跨域访问。 一、理解同源策略 同源策略是浏览器为了保护用户安全而实施的一项安全机制,它禁止了一个源(domain)的文档或脚本获取或操作另一个源的资源。这意味着...

    IE7 Ajax跨域问题

    标题 "IE7 Ajax跨域问题" 涉及到的是在使用Ajax技术在Internet Explorer 7(IE7)浏览器中处理跨域请求时遇到的挑战。在Web开发中,Ajax(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下与服务器...

    ajax跨域上传文件.zip

    【Ajax跨域文件上传详解】 Ajax(Asynchronous JavaScript and XML)技术允许我们在不刷新整个页面的情况下,通过JavaScript异步地与服务器交换数据并更新部分网页内容。在现代Web开发中,Ajax广泛应用于创建动态和...

    ajax跨域获取数据

    但随着互联网应用的发展,这种需求变得越来越普遍,于是诞生了"ajax跨域获取数据"的技术解决方案。这个话题涵盖了多个关键知识点,包括同源策略、CORS(跨源资源共享)以及JSONP等。 1. 同源策略:同源策略是浏览器...

    Ajax跨域问题及其解决方案.docx

    ### Ajax跨域问题及其解决方案 #### 一、Ajax跨域问题概述 在现代Web开发中,前后端分离架构越来越流行。这种模式下,前端页面与后端服务通常部署在不同的服务器上,甚至可能位于不同的域名下。当浏览器发起对不同...

    Ajax跨域传输参数

    可以将book.aa.com用iframe添加到 www.aa.com的某个页面下,在www.aa.com和iframe里面都加上document.domain = "aa.com",这样就可以统一域了,可以实现跨域访问。就和平时同一个域中镶嵌iframe一样,直接调用里面的...

Global site tag (gtag.js) - Google Analytics