gpt4 book ai didi

delphi - delphi中修改 "custom"浏览器中的requestHeaders

转载 作者:行者123 更新时间:2023-12-03 14:58:56 25 4
gpt4 key购买 nike

我的 deplhi 应用程序 (IE) 中集成了一个浏览器。我需要调用某个 Web 应用程序,并且需要在 header 中为来自应用程序浏览器的所有请求附加一个新变量,例如 jquery 将 HTTP_X_REQUESTED_WITH 参数添加到 xhrobj 中。我知道如何才能做到这一点吗?代码示例会很棒。我正在使用 TWebBrowser

最佳答案

您可以使用 OnBeforeNavigate2 事件修改 header :

procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
Headers: OleVariant; var Cancel: WordBool);
var
NewHeaders: OleVariant;
begin
// do not allow frames or iframes to raise this event
if (pDisp as IUnknown) = (WebBrowser1.ControlInterface as IUnknown) then
begin
// avoid stack overflow: check if our custom header is already set
if Pos('MyHeader', Headers) <> 0 then Exit;

// cancel the current navigation
Cancel := True;
(pDisp as IWebBrowser2).Stop;

// modify headers with our custom header
NewHeaders := Headers + 'MyHeader: Value'#13#10;

(pDisp as IWebBrowser2).Navigate2(URL, Flags, TargetFrameName, PostData, NewHeaders);
end;
end;

关于delphi - delphi中修改 "custom"浏览器中的requestHeaders,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9210507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com