cef webview创建浏览器,实现ajax异步加载数据异常 NETWORK_ERROR: XMLHttpRequest Exception 101


错误代码:

web = new WebView("https://www.baidu.com/", new BrowserSettings());

                web.Dock = DockStyle.Fill;

                web.LoadCompleted += (o, e) =>

                {

                    web.ExecuteScript(Properties.Resources.getUrlJs);

                };

                //web.CreateControl();

                //ali.WindowState = FormWindowState.Minimized;

                //ali.ShowInTaskbar = false;

                ali.Controls.Add(web);

                ali.Show();

部分getUrlJs字符串(网上抄的):

function getContent()

{

  var resJson='';

var url=getUrl(a);

var xmlhttp;

if (url=="")

  {

  document.getElementById("txtHint").innerHTML="";

  return;

  }

if (window.XMLHttpRequest)

  {

  xmlhttp=new XMLHttpRequest();

  }

else

  {

  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

  }

xmlhttp.onreadystatechange=function()

  {

  if (xmlhttp.readyState==4 && xmlhttp.status==200)

    {

     resJson= xmlhttp.responseText;

    }

  }

xmlhttp.open("GET",url,false);

xmlhttp.send();

return resJson;

}

当执行 string content = web.EvaluateScript(data + "getContent();").ToString();的时候,

程序就报了 NETWORK_ERROR: XMLHttpRequest Exception 101异常

 

查资料说是跨域操作了,什么什么的,我没继续查下去,因为并非js老手。

最后查到原因是因为我第一次加载的https加密链接,……改成http就没事了………

 

渣渣勿喷。。

 

 

 

web = new WebView("http://api.m.taobao.com/", new BrowserSettings());//http://api.m.taobao.com/                web.Dock = DockStyle.Fill;                web.LoadCompleted += (o, e) =>                {                    web.ExecuteScript(Properties.Resources.getUrlJs);                };                //web.CreateControl();                //ali.WindowState = FormWindowState.Minimized;                //ali.ShowInTaskbar = false;                ali.Controls.Add(web);                ali.Show();


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM