detect/WebViewControl.Avalonia/Request.cs

44 lines
1.2 KiB
C#
Raw Permalink Normal View History

2024-11-13 17:09:15 +08:00
using System.Collections.Specialized;
using Xilium.CefGlue;
namespace WebViewControl {
public class Request {
private CefRequest CefRequest { get; }
private string UrlOverride { get; }
internal Request(CefRequest request, string urlOverride) {
CefRequest = request;
UrlOverride = urlOverride;
}
public string Method {
get { return CefRequest.Method; }
}
public string Url {
get { return UrlOverride ?? CefRequest.Url; }
}
public virtual void Cancel() {
Canceled = true;
}
public bool Canceled { get; private set; }
internal bool IsMainFrame => CefRequest.ResourceType == CefResourceType.MainFrame;
public NameValueCollection GetHeaderMap() =>
CefRequest.GetHeaderMap();
public void SetHeaderMap(NameValueCollection headers) =>
CefRequest.SetHeaderMap(headers);
public string GetHeaderByName(string name) =>
CefRequest.GetHeaderByName(name);
public void SetHeaderByName(string name, string value, bool overwrite) =>
CefRequest.SetHeaderByName(name, value, overwrite);
}
}