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();

posted @ 2017-02-26 22:57  飞机大炮。  阅读(3241)  评论(0编辑  收藏  举报