错误代码:
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(); |