2010-10-18 349 views
1

我正在尋找一種方法來攔截與delphi的http post請求,而不掛鉤任何瀏覽器functions.Is那可能嗎?怎麼樣??攔截http POST請求

回答

5

您可以使用類似WinPCap搶攔截專門爲端口80上使用的數據包用POST http協議看着所有的數據包。有一個Delphi wrapper可用這可能有一些幫助。這與WireShark使用的引擎相同,如果您只需手動執行此操作或調試現有協議,該引擎本身就會有用。

0

您必須創建一個像本地代理服務器一樣的應用程序,以捕獲所有發出的請求,然後將它們轉發給適當的服務器。

我不確定您使用的是哪個版本的Delphi,但您可能需要查看此sample Proxy Server in C#並查看是否可以移植適合您需求的基礎知識。

+0

我將不勝感激一個不以.NET編寫的例子 – opc0de 2010-10-18 15:21:25

+0

@ opc0de - 可以理解的。你會選擇哪種語言(我試圖找到德爾福但不能)。 – 2010-10-18 15:22:04

+0

C++,ASM的工作;) – opc0de 2010-10-18 15:50:28

1

替代在Delphi中這樣做,您可能需要考慮使用良好且可編寫腳本的免費解決方案,如Http Fiddler

編輯:

如果你想從頭開始寫一個正確和完全成熟的代理,與最有可能的HTTP客戶端和服務器的特質的工作做好了,至少在幾個人的編制 - 月的工作。

如果您願意至少使用一些基礎庫,請查看this question

--jeroen

+0

我想學習如何做到這一點。 – opc0de 2010-10-18 15:34:56

+0

看到我編輯的答案。祝你好運! – 2010-10-18 17:43:41