zoukankan      html  css  js  c++  java
  • Ajax跨域访问

    1  function GetExamDynamicInfo() {
    2                 var url = "http://localhost:9966/exam.cbi360.com/ExamDynamic.ashx?op=Exam&spid=" + sid + "&top=5&t=" + new Date().getTime();
    3                 _examrequest.open("Get", url, true);
    4                 _examrequest.onreadystatechange = ShowExam;
    5                 _examrequest.send(null);
    6         }
    7  

      通过使用ajax可以使用异步操作,做到页面局部无刷新的效果。在本地两个项目之间如果说是需要在A项目中通过ajax访问B项目,url传入的是B项目中的要访问的地址,那么在IE中的左下角会有错误警告,提示没有权限访问。如果是在谷歌中则无提示,但获取不到。怎么回事呢?原来js是无法进行跨域访问的,既然用js无法访问,那就用web代理的方式访问吧。

     1   function GetExamDynamicInfo() {
     2                 var url = 
     3  send_screquest("Text?url=" + encodeURIComponent("http://localhost:9966/exam.cbi360.com/Handler/ExamDynamic.ashx?op=getExam&spid=" + sid + "&top=5&t=" + new Date().getTime();
     4 );    
     5 //将此url改为当前项目中的代理页面:Text.aspx
     6                 _examrequest.open("Get", url, true);
     7 
     8                 _examrequest.onreadystatechange = ShowExam;
     9                 _examrequest.send(null);
    10         }

      通过Text.aspx获取即可,只在.cs页面中写入以下代码即可,可以将页面的信息删掉,留下最上边的一行<%...%>即可

    1  string url = HttpUtility.UrlDecode(Request.QueryString["url"]);
    2         WebClient myWebClient = new WebClient();
    3         byte[] myDataBuffer = myWebClient.DownloadData(url);
    4         string data = Encoding.UTF8.GetString(myDataBuffer);
    5         Response.Write(data);
    6         //Response.End(); 
  • 相关阅读:
    Python float() 函数
    Python bytearray() 函数
    scanner.nextInt()与scanner.nextDouble
    Scanner对象next与nextLine
    JavaDoc
    包机制
    运算符要点
    变量与常量
    test
    类型转换
  • 原文地址:https://www.cnblogs.com/lollipop/p/2627375.html
Copyright © 2011-2022 走看看