|
|
@ -37,12 +37,14 @@ namespace 齐越慧眼.UserControls |
|
|
|
//WebSecurity = CefState.Disabled,
|
|
|
|
ApplicationCache = CefState.Enabled, |
|
|
|
LocalStorage = CefState.Enabled |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
//RequestHandler =new MyRequestHandler()
|
|
|
|
// RequestHandler =new MyRequestHandler()
|
|
|
|
}; |
|
|
|
|
|
|
|
//web.CefCommandLineArgs.Add("--disable-web-security", "");
|
|
|
|
|
|
|
|
MyResourceRequestHandlerFactory myResourceRequestHandlerFactory = new MyResourceRequestHandlerFactory(this); |
|
|
|
myResourceRequestHandlerFactory.Handlers.TryAdd("test",null); |
|
|
|
|
|
|
@ -65,12 +67,13 @@ namespace 齐越慧眼.UserControls |
|
|
|
|
|
|
|
public bool IsJd { get; set; } |
|
|
|
|
|
|
|
public SomeBrowerControl(string url,bool isJd, HandyControl.Controls.TabItem tabItem) |
|
|
|
public SomeBrowerControl(string base64, bool isJd, HandyControl.Controls.TabItem tabItem) |
|
|
|
{ |
|
|
|
InitializeComponent(); |
|
|
|
Tab = tabItem; |
|
|
|
IsJd = isJd; |
|
|
|
web = new ExtChromiumBrowser(url) |
|
|
|
Base64Img = base64; |
|
|
|
web = new ExtChromiumBrowser("https://www.jd.com/") |
|
|
|
{ |
|
|
|
BrowserSettings = |
|
|
|
{ |
|
|
@ -79,8 +82,9 @@ namespace 齐越慧眼.UserControls |
|
|
|
//关于跨域限制
|
|
|
|
//WebSecurity = CefState.Disabled,
|
|
|
|
ApplicationCache = CefState.Enabled, |
|
|
|
LocalStorage = CefState.Enabled |
|
|
|
|
|
|
|
LocalStorage = CefState.Enabled, |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
//RequestHandler =new MyRequestHandler()
|
|
|
@ -94,16 +98,15 @@ namespace 齐越慧眼.UserControls |
|
|
|
|
|
|
|
grid.Children.Add(web); |
|
|
|
Loaded += BrowerControl_Loaded; |
|
|
|
|
|
|
|
//web.JavascriptObjectRepository.Settings.LegacyBindingEnabled = true;
|
|
|
|
//var cjs = new Cef2AsyncJS();
|
|
|
|
//cjs.Brower = this;
|
|
|
|
//web.JavascriptObjectRepository.Register("hyCoreModel", cjs, BindingOptions.DefaultBinder);
|
|
|
|
web.JavascriptObjectRepository.Settings.LegacyBindingEnabled = true; |
|
|
|
var cjs = new Cef2AsyncJS(); |
|
|
|
cjs.Brower = this; |
|
|
|
web.JavascriptObjectRepository.Register("hyCoreModel", cjs, BindingOptions.DefaultBinder); |
|
|
|
web.StartNewWindow += Web_StartNewWindow; |
|
|
|
web.TitleChanged += Web_TitleChanged; |
|
|
|
web.AddressChanged += Web_AddressChanged; |
|
|
|
//web.ExecuteScriptAsyncWhenPageLoaded("hyCoreModel.onLoad()");
|
|
|
|
//this.KeyDown += BrowerControl_KeyDown;
|
|
|
|
web.ExecuteScriptAsyncWhenPageLoaded("hyCoreModel.onLoad()"); |
|
|
|
this.KeyDown += BrowerControl_KeyDown; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -154,6 +157,8 @@ namespace 齐越慧眼.UserControls |
|
|
|
StartPage(); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
private void Web_StartNewWindow(object sender, NewWindowEventArgs e) |
|
|
@ -166,10 +171,6 @@ namespace 齐越慧眼.UserControls |
|
|
|
private void BrowerControl_Loaded(object sender, RoutedEventArgs e) |
|
|
|
{ |
|
|
|
|
|
|
|
if(IsJd) |
|
|
|
tip.Visibility = Visibility.Collapsed; |
|
|
|
|
|
|
|
|
|
|
|
Thread t = new Thread(() => { |
|
|
|
|
|
|
|
IWebBrowser webBrowser = null; |
|
|
@ -433,7 +434,43 @@ namespace 齐越慧眼.UserControls |
|
|
|
|
|
|
|
public void RunSomeAction() |
|
|
|
{ |
|
|
|
DoJavaScript(@$"
|
|
|
|
if (IsJd) { |
|
|
|
string js = @$"
|
|
|
|
|
|
|
|
var bytes=window.atob(""{Base64Img}""); |
|
|
|
|
|
|
|
var ab = new ArrayBuffer(bytes.length); |
|
|
|
var ia = new Uint8Array(ab); |
|
|
|
for (var i = 0; i < bytes.length; i++) {{ |
|
|
|
ia[i] = bytes.charCodeAt(i); |
|
|
|
}} |
|
|
|
var lob=new Blob( [ab] , {{type : 'image/png'}}); |
|
|
|
|
|
|
|
var form= document.getElementById(""search-img-upload""); |
|
|
|
var formData = new FormData(); |
|
|
|
|
|
|
|
formData.append(""file"",lob, Date.now() + '.jpg'); |
|
|
|
|
|
|
|
$.ajax({{ |
|
|
|
url : form.action, |
|
|
|
type : ""POST"", |
|
|
|
data : formData, |
|
|
|
contentType : false, |
|
|
|
processData : false, |
|
|
|
success:function(data){{ |
|
|
|
hyCoreModel.onSomePicRes(""err""); |
|
|
|
$(document.head).append(data); |
|
|
|
console.log(data); |
|
|
|
}}, |
|
|
|
error:function(err){{alert('出错');window.errAjax=err;console.log(err);hyCoreModel.onSomePicRes(""err"");}} |
|
|
|
}}); |
|
|
|
";
|
|
|
|
|
|
|
|
DoJavaScript(js); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
DoJavaScript(@$"
|
|
|
|
window.lib.mtop.request({{ |
|
|
|
api: ""mtop.1688.imageService.putImage"", |
|
|
|
data: JSON.stringify({{ |
|
|
@ -448,6 +485,7 @@ namespace 齐越慧眼.UserControls |
|
|
|
hyCoreModel.onSomePicRes(res) |
|
|
|
}}) |
|
|
|
");
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private bool AddCss() |
|
|
@ -667,18 +705,30 @@ namespace 齐越慧眼.UserControls |
|
|
|
|
|
|
|
public void onSomePicRes(dynamic data) |
|
|
|
{ |
|
|
|
string json = Newtonsoft.Json.JsonConvert.SerializeObject(data); |
|
|
|
//{"imageId":"0","requestId":"a837075218924fd6a6969eb1d0596c64","sessionId":"6c4a3e67343c41dcbfb3ac0b2fb82abd"}
|
|
|
|
|
|
|
|
string imgId = data.data.imageId; |
|
|
|
string requestId = data.data.requestId; |
|
|
|
string sessionId= data.data.sessionId; |
|
|
|
Application.Current.Dispatcher.Invoke(() => |
|
|
|
if (Brower.IsJd) |
|
|
|
{ |
|
|
|
Application.Current.Dispatcher.Invoke(() => |
|
|
|
{ |
|
|
|
Brower.tip.Visibility = Visibility.Collapsed; |
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
Brower.web.Load($"https://s.1688.com/youyuan/index.htm?tab=imageSearch&imageAddress=&imageId={imgId}&spm=a260k.dacugeneral.search.0&imageIdList={imgId}"); |
|
|
|
Brower.tip.Visibility = Visibility.Collapsed; |
|
|
|
}); |
|
|
|
|
|
|
|
string json = Newtonsoft.Json.JsonConvert.SerializeObject(data); |
|
|
|
//{"imageId":"0","requestId":"a837075218924fd6a6969eb1d0596c64","sessionId":"6c4a3e67343c41dcbfb3ac0b2fb82abd"}
|
|
|
|
|
|
|
|
string imgId = data.data.imageId; |
|
|
|
string requestId = data.data.requestId; |
|
|
|
string sessionId = data.data.sessionId; |
|
|
|
Application.Current.Dispatcher.Invoke(() => |
|
|
|
{ |
|
|
|
Brower.web.Load($"https://s.1688.com/youyuan/index.htm?tab=imageSearch&imageAddress=&imageId={imgId}&spm=a260k.dacugeneral.search.0&imageIdList={imgId}"); |
|
|
|
Brower.tip.Visibility = Visibility.Collapsed; |
|
|
|
}); |
|
|
|
} |
|
|
|
//https://s.1688.com/youyuan/index.htm?tab=imageSearch&imageAddress=&imageId=1809207254297088602&spm=a260k.dacugeneral.search.0&imageIdList=1809207254297088602
|
|
|
|
|
|
|
|
} |
|
|
|