js跨域如何处理啊???怎么IE老是有问题

js跨域如何处理啊???怎么IE老是有问题,第1张

1、js向服务器发送请求,然后让服务器去另一个域上获取数据返回。(用于你无法控制另一个域)

比如php中利用cUrl。

2、放置跨域文件.

3、用JSONP。

虽然不能跨域进行通信,但是可以引入跨域的js文件。

先定义一个函数

var returnData

function getData(obj) {

returnData = JSON.parse(obj)

}

当我们要向www.baidu.com/s.php请求数据的时候,我们可以引入某个包含返回信息的js文件。

比如: <script type="text/javascript" src="www.baidu.com/s.php?id=12321" />

js的内容是getData({json:'格式'})返回时输出 格式是 text/javascript (比如php用header('Content-type:text/javascript')来输出)

那么文件加载好后解析js时就会执行这个函数,返回得到的数据就被赋值给了returnData变量

以这样的方式插入到页面中:

var script = document.createElement('script')

script.src='www.baidu.com/s.php?id=12321' //传入参数id=12321

body.appendChild(script)

1.什么是跨域

经常会在页面上使用ajax请求访问其他服务器的数据,此时,客户端会出现跨域问题.

跨域问题是由于javascript语言安全限制中的同源策略造成的.

简单来说,同源策略是指一段脚本只能读取来自同一来源的窗口和文档的属性,这里的同一来源指的是主机名、协议和端口号的组合.

2.解决方案:

服务器端:

        protected void Page_Load(object sender, EventArgs e)

        {

            string result = "callback({\"name\":\"zhangsan\",\"date\":\"2012-12-03\"})"

            Response.Clear()

            Response.Write(result)

            Response.End()

        }

客户端:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <title></title>

    <script type="text/javascript">

        var result = null

        window.onload = function () {

            var script = document.createElement("script")

            script.type = "text/javascript"

            script.src = "http://192.168.0.101/ExampleBusinessApplication.Web/web2.aspx"

            var head = document.getElementsByTagName("head")[0]

            head.insertBefore(script, head.firstChild)

        }

        function callback(data) {

            result = data

        }

        function b_click() {

            alert(result.name)

        }

    </script>

</head>

<body>

    <input type="button" value="click me!" onclick="b_click()" />

</body>

</html>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11733108.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存