最火下载站首页
手机版
最火下载站
关注公众号
最火下载站

当前位置:首页 > 网络知识 > Web前端 > Ajax/JavaScript> 实例代码分析:百度如何实现AJAX跨域

实例代码分析:百度如何实现AJAX跨域

文章作者:网友投稿 发布时间:2008-12-25 来源:网络

  烈火建站学院(LieHuo.Net)AJAX教程 大家在做网站时可能会遇到AJAX跨子域名的问题,这个问题对于技术高手来说可能并不难,但是对于新手来说可能是难题了,偶尔看到baidu的通行证处理都是在二级域名passport.baidu.com中处理的,但是baidu很多地方登录都好像是用ajax处理的,他是怎么做的呢?研究了一下,发现一个小技巧。 咱们也借鉴一下。

  在http://zhidao.baidu.com/ 未登录用户回答问题时会用iframe调用http://zhidao.baidu.com/userlogin.html,userlogin.html有下面的javascript,代码如下:

以下为引用的内容:


  我们可以看到request方法处理异步请求使用动态往head中添加script而不是用xmlhttp发送get请求。妙就妙在这。我们知道调用javascript是没有域的限制的。当加载完成时一样会执行。当然请求参数只能通过拼url的方式了。url通过服务器处理后直接输出loginFalse()或者PSP_ik();
非常优雅的解决了跨域的问题。

  这让我们想到了用iframe当ajax上传文件一样异曲同工。 如果不需要服务器反馈,google的点击计数用new img().src=...; 当然baidu这段脚本中还有一些小的技巧也值得我们学习。

上一篇: 实例教程:通过JS更改FORM的action

下一篇: 实例:使用js脚本添加、修改、删除xml节点

共有0条评论网友评论

游戏排行榜