[英]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.