如何正确地为javascript响应块发送ajax请求

how to correctly send ajax request for a javascript response block

本文关键字:ajax 请求 响应 正确地 javascript      更新时间:2023-09-26

我使用ajax调用远程服务器,应该返回一个javascript块作为响应。我的ajax调用类似于:

    var m3_u = (location.protocol=='https:'?'https://ads.admarvel.com/fam/javascriptGetAd.php':'http://ads.admarvel.com/fam/javascriptGetAd.php');
    var m3_r = Math.floor(Math.random()*99999999999);
    var queryString = '?partner_id='+partnerId;
queryString += '&site_id='+siteId;
queryString += '&target_params=' + targetparams_str;
queryString += '&version=1.5';
queryString += '&language=javascript';
queryString += '&format=wap';
queryString += '&cb='+m3_r;
    if (window.XMLHttpRequest)
                {
                    xmlhttp=new XMLHttpRequest();
                }
                else
                {
                    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
                alert(xmlhttp);
                xmlhttp.onreadystatechange=function()
                {
                    alert(xmlhttp.readyState);
                    if (xmlhttp.readyState==4)
                    {
                        alert("response "+xmlhttp.responseXML);
                        console.log(xmlhttp.responseXML);
                        //document.getElementById('ad').innerHTML = xmlhttp.responseText;
                        //document.write("<scr"+"ipt type='text/javascript'>");
                        //document.write(xmlhttp.responseText); 
                        //document.write("<'/scr"+"ipt>");
                    }
                }
                xmlhttp.open("GET",m3_u+queryString,false);
                xmlhttp.setRequestHeader('Content-Type','text/javascript');
                xmlhttp.send();

但是我得到的响应是null。当我在浏览器中点击url时,它正确地返回给我一个javascript代码块。

正确的方法是什么?

我想你是在尝试跨站点XMLHTTPRequest。

你必须以不同的方式处理跨站点XMLHttpRequest。如果你在Java中实现,你可以遵循下面的URL

http://mytechbites.blogspot.com/2009/07/cross-domain-xmlhttprequest-calls.html