簡體   English   中英

如何正確發送對javascript響應塊的ajax請求

[英]how to correctly send ajax request for a javascript response block

我正在對遠程服務器使用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();

但是我得到的答復是無效的 當我點擊瀏覽器中的網址時,它會正確地向我返回一個javascript代碼塊。

什么是正確的方法?

我認為您正在嘗試執行跨站點XMLHTTPRequest。

您必須以不同方式處理跨站點XMLHttpRequest。 如果您使用Java實現,則可以遵循以下URL

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

否則,請使用jQuery.ajax。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM