求助
用AJAX,定时请求数据。html从服务器加载时,一切正常。可以与服务器交互,保存为本地html文件,连接服务器,服务器可以响应请求,并发送数据给AJAX,但是AJAX接收不到数据,为什么?

解决方案 »

  1.   

    可以发送数据给ajax是什么意思.你本地去ajax服务器 浏览器安全直接就告诉你拒绝访问了
      

  2.   


    服务器给客户端发数据,比如发一个id给客户端。
    我不知到B/S模式的叫客户端吗?
    就是AJAX 异步请求的数据。
      

  3.   

    你这就是跨域啊 你的html是在你本地运行了 而不是通过访问请求服务器反馈给你的
      

  4.   


    这个要这么解决呢?看到在head加<base href="http://localhost:8000/log.html"/>
    不管用。
      

  5.   


    <!-- saved from url=(0030)http://localhost:8000/log.html -->
    <html><meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <head><base href="http://localhost:8000/log.html" /><script type="text/javascript"> var xmlhttp = null;
    if (window.XMLHttpRequest) {
        xmlhttp=new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }var id = "";
    RequestLogConnect();function RequestLogConnect() {
        url='http://localhost:8000/request_log_connect';  
        if (xmlhttp!=null) {
            xmlhttp.onreadystatechange=RequestLogConnectStateChange;
            xmlhttp.open("GET",url,true);
            xmlhttp.send(null);
        } else {
            alert("Your browser does not support XMLHttpRequest.");
        }
    }function RequestLogConnectStateChange() {
        if (xmlhttp.readyState==4) {
            if (xmlhttp.status==200) {
                id = xmlhttp.responseText;
            } else {
                var text = xmlhttp.responseText;
                RequestFailure(text);
            }
        }
    }/////////////////////////////////////////////////////////////////////////////
    var log = "";
    var time = window.setInterval('IntervalExecute()', 1000); function IntervalExecute() {
        RequestLog();
        document.body.scrollTop = document.body.scrollHeight;
    }function RequestLog() {
        url='http://localhost:8000/request_log?id=' + id;
        document.write(url);
        if (xmlhttp!=null) {
            xmlhttp.onreadystatechange=RequestLogStateChange;
            xmlhttp.open("GET",url,true);
            xmlhttp.send(null);
        } else {
            alert("Your browser does not support XMLHttpRequest.");
        }
    }function RequestLogStateChange() {
        if (xmlhttp.readyState==4) {
            if (xmlhttp.status==200) {
                var text = xmlhttp.responseText;
                RequestLogSuccess(text);
            } else {
                var text = xmlhttp.responseText;
                RequestFailure(text);
            }
        }
    }function RequestLogSuccess(text) {
        var new_log = text;
        log = new_log + log;
        var log_textarea = document.getElementById("textarea");
        log_textarea.value = log;
    }function RequestFailure(text) {  
        document.write(text);
        time = window.clearInterval(time)
    }                </script></head><body>
    <h2>Print Logs</h2><p>
    <textarea id="textarea" cols="150" rows="30">
    </textarea>
    </p></body>
    </html>
      

  6.   

    手写跨域ajax比较复杂 建议你直接用jquery封好的 搜一下jquery jsonp就有很多资料可以参考
    另外 服务器端响应ajax的页面也要做修改的
      

  7.   


    服务器端是我自己用C++写的,
    在Linux下用epoll实现的,
    简单实现了HTTP协议。可是到了Html,javascript,AJAX,就力不从心了。以前没弄过。哎