永发信息网

javascript如何来实现跨域发请求??

答案:4  悬赏:20  手机版
解决时间 2021-07-17 21:02
  • 提问者网友:捧腹剧
  • 2021-07-17 07:56
我想在别人的网站中的某一个网页,中加入一段js代码,实现给我的服务器端发送一个http请求?不知道有没有好的方案?请求高手指点。最好详细点谢谢了 (^_^)!
最佳答案
  • 五星知识达人网友:千夜
  • 2021-07-17 08:32

==!


你想在别人的主页上插入代码 ,你觉得可能么?

全部回答
  • 1楼网友:十年萤火照君眠
  • 2021-07-17 12:26
你的这个要求貌似实现不了。这已经不是跨域的问题了。
  • 2楼网友:慢性怪人
  • 2021-07-17 11:02
http://www.cnblogs.com/zhangqingping/archive/2009/03/20/1417879.html javascript 跨域请求的两种方法

还在为javascript跨域访问头疼么?

以下两种解决方案或许可以帮你解忧:

1. 使用跳转请求页

使用跳转页不做详细介绍了,原理比较简单,因为服务器端脚本不存在跨域访问,所以在当前域名下新增一个页面来进行请求当前域外的页面,进而获得所需数据,给当前域下的页面使用。

就相当于是,我要给国外的一位朋友送一个礼物,但是我没有获得签证(浏览器的许可),不能出国,所以只好委托一个快递公司来帮我做这件事了,区别是雇佣快递公司需要钱,多写个跳转页面成本没那么高 :)

2. 远程加载 javascript 方法

单独使用javascript的xmlhttp请求(也就是AJAX技术)其他域名下的页面时,会有权限问题。

浏览器对javascript本身加载js并没有跨域问题,例如

<script type="text/javascript" src=" http://www.test.com/test.jsp "></script>中的src可以是任意的地址(域名可以不是当前请求的页面的域名)。

因此,我们可以利用这一点来进行javascript的跨域请求。

示例代码:a.html

1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns=" http://www.w3.org/1999/xhtml"> 3 4<body> 5 6<head> 7 8 <title></title> 9 10 <script type=”text/javascript”> 11 12 function fnShowResult(strResult){ 13 14 //TODO:strResult是通过jsp获取到的数据,当然这个函数可以有多个参数 15 16 } 17 18</script> 19 20</head> 21 22<div>相关咨询:</div> 23 24</body> 25 26<script type="text/javascript" src=" http://www.test.com/test.jsp ?cnt=10"></script> 27 28</html> 29

其中,src的地址 http://www.test.com/test.jsp就是远程需要加载的javascript代码页面。

这个test.jsp中可以实现你所需要读取数据的操作,并组织成javascript代码输出。

示例代码:test.jsp

Code <%@ page language="java" contentType="text/html;charset=gbk" session="false" %> <%@ page import = "java.lang.Integer,java.util.* %> <%request.setCharacterEncoding("utf-8");%> <% String strCnt = request.getParameter("cnt"); int nCnt = 10; if(strCnt != null) nCnt = Integer.parseInt(strCnt); String strContent = ""; for(int i=0; i<nCnt; i++){ strContent += "<div>这里是测试数据_"+i+"</div>"; } String strScript = "fnShowResult('"+strContent+"');"; %> <%=strScript%>

这样,在test.jsp中读取所需数据之后,就调用a.html中已经定义好的fnShowResult函数来进行数据的展示了。哈哈,这样是不是很好玩?

不过,需要注意的是这种方法在给test.jsp提交数据参数时,是使用了get方法来提交信息,而get方法每次提交的信息不能超过 2k,不过在大部分应用2K都还够用,不是吗?

  • 3楼网友:雾月
  • 2021-07-17 09:33

可以直接用img,地址后面直接跟参数就行了

如<img src=" http://www.16060.net/test.asp?id=<%=id%>&amp;sid=<%=sid%>" alt=" "/>

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯