提交 bb05c9d0 编写于 作者: 诺离's avatar 诺离 🎨

增加了send的数据功能函数

上级 2c7f160e
......@@ -17,4 +17,12 @@
5. 增加替换返回的cookie
6. 增加修改返回的状态码和文本
7. 增加删除返回的cookie
8. 增加给返回的数据添加cookie
\ No newline at end of file
8. 增加给返回的数据添加cookie
- 2021/4/28 - 2
1. 增加了发送数据的监听
2. 增加修改发送出去的URL
3. 增加替换发送的POST数据
4. 增加重写发送的POST数据
5. 增加修改发送时的cookie
6. 增加设置发送时的协议头
\ No newline at end of file
B// efd.cpp: 定义 DLL 应用程序的导出函数。
......
......@@ -22,4 +22,11 @@ RecvResetHtml
RecvInsertBody
RecvInsertCookie
RecvRemoveCookie
RecvResetState
\ No newline at end of file
RecvResetState
SendResetPostBytes
SendResetPostStr
SendResetURL
SendReplaceURL
SendReplacePost
SendResetCookie
SendResetHeader
\ No newline at end of file
......@@ -10,6 +10,7 @@ struct EFD_pmMessage {
#pragma once
typedef void (WINAPI *RecvCallbackFun)(EFD_pmMessage* pmmessage,char * url,char * head,char * cookie,unsigned int raw, unsigned int rawLen);
typedef void (WINAPI* SendCallbackFun)(EFD_pmMessage* pmmessage, char* url, char* head, char* cookie, unsigned int post, unsigned int postLen);
extern "C" _declspec(dllexport) int __stdcall InitFiddler(int port, int callback);
extern "C" _declspec(dllexport) void __stdcall CloseFiddler();
extern "C" _declspec(dllexport) void __stdcall AutoStartFiddlerProxy(bool start);
......@@ -34,6 +35,15 @@ extern "C" _declspec(dllexport) int __stdcall RecvInsertBody(EFD_pmMessage*, ch
extern "C" _declspec(dllexport) int __stdcall RecvInsertCookie(EFD_pmMessage*, char*);
extern "C" _declspec(dllexport) int __stdcall RecvRemoveCookie(EFD_pmMessage*);
extern "C" _declspec(dllexport) int __stdcall RecvResetState(EFD_pmMessage*, char*, char*);
extern "C" _declspec(dllexport) int __stdcall SendResetPostBytes(EFD_pmMessage * pmmessage, char* newdataBase64);
extern "C" _declspec(dllexport) int __stdcall SendResetPostStr(EFD_pmMessage * pmmessage, char* newdata);
extern "C" _declspec(dllexport) int __stdcall SendResetURL(EFD_pmMessage * pmmessage, char* newUrl);
extern "C" _declspec(dllexport) int __stdcall SendReplaceURL(EFD_pmMessage * pmmessage, char* rawUrl, char* newUrl);
extern "C" _declspec(dllexport) int __stdcall SendReplacePost(EFD_pmMessage * pmmessage, char* rawPost, char* newPost);
extern "C" _declspec(dllexport) int __stdcall SendResetCookie(EFD_pmMessage * pmmessage, char* newCookie);
extern "C" _declspec(dllexport) int __stdcall SendResetHeader(EFD_pmMessage * pmmessage, char* headerKey, char* headerVal);
......@@ -44,3 +54,17 @@ extern "C" _declspec(dllexport) int __stdcall RecvResetState(EFD_pmMessage*, ch
#define RECV_INSERT_COOKIE 2005
#define RECV_RESET_STATE 2006
#define SEND_RESET_POST_BYTES 1001
#define SEND_RESET_POST_STR 1002
#define SEND_RESET_URL 1003
#define SEND_REPLACE_URL 1004
#define SEND_REPLACE_POST 1005
#define SEND_RESET_COOKIE 1006
#define SEND_RESET_HEADER 1007
int nextPmIndex(EFD_pmMessage* pmmessage) {
EFD_pmMessage pmIndex = *(pmmessage);
pmIndex.count = pmIndex.count + 1;
*(pmmessage) = pmIndex;
return pmIndex.count;
}
......@@ -181,6 +181,8 @@
</ProjectReference>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="recv.h" />
<ClInclude Include="send.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="targetver.h" />
<ClInclude Include="efd.h" />
......
......@@ -24,6 +24,12 @@
<ClInclude Include="efd.h">
<Filter>头文件</Filter>
</ClInclude>
<ClInclude Include="recv.h">
<Filter>头文件</Filter>
</ClInclude>
<ClInclude Include="send.h">
<Filter>头文件</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">
......
#pragma once
int __stdcall RecvRepeatHtml(EFD_pmMessage* pmmessage, char* rawdata, char* newdata) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = RECV_REPLACE_BODY;
pm.pmdata1 = rawdata;
pm.pmdata2 = newdata;
*(pmmessage + index) = pm;
return index;
}
//recv_重写返回的数据
int __stdcall RecvResetHtml(EFD_pmMessage* pmmessage, char* newdata) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = RECV_RESET_BODY;
pm.pmdata1 = newdata;
*(pmmessage + index) = pm;
return index;
}
//recv_顶部添加数据
int __stdcall RecvInsertBody(EFD_pmMessage* pmmessage, char* adddata) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = RECV_INSERT_BODY;
pm.pmdata1 = adddata;
*(pmmessage + index) = pm;
return index;
}
//recv_怎返回中添加新的cookie
int __stdcall RecvInsertCookie(EFD_pmMessage* pmmessage, char* cookie) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = RECV_INSERT_COOKIE;
pm.pmdata1 = cookie;
*(pmmessage + index) = pm;
return index;
}
//recv_顶部添加数据
int __stdcall RecvRemoveCookie(EFD_pmMessage* pmmessage, char* adddata) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = RECV_REMOVE_COOKIE;
*(pmmessage + index) = pm;
return index;
}
//recv_重新改变返回的状态码和状态文本
int __stdcall RecvResetState(EFD_pmMessage* pmmessage, char* stateCode, char* stateText) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = RECV_RESET_STATE;
pm.pmdata1 = stateCode;
pm.pmdata2 = stateText;
*(pmmessage + index) = pm;
return index;
}
#pragma once
//send 设置post数据base64编码后(byte)
int __stdcall SendResetPostBytes(EFD_pmMessage* pmmessage, char* newdataBase64) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_RESET_POST_BYTES;
pm.pmdata1 = newdataBase64;
*(pmmessage + index) = pm;
return index;
}
//send 设置post数据base64编码后(str)
int __stdcall SendResetPostStr(EFD_pmMessage* pmmessage, char* newdata) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_RESET_POST_STR;
pm.pmdata1 = newdata;
*(pmmessage + index) = pm;
return index;
}
//send 设置提交出去的URL
int __stdcall SendResetURL(EFD_pmMessage* pmmessage, char* newUrl) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_RESET_URL;
pm.pmdata1 = newUrl;
*(pmmessage + index) = pm;
return index;
}
//send 替换URL
int __stdcall SendReplaceURL(EFD_pmMessage* pmmessage,char* rawUrl, char* newUrl) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_REPLACE_URL;
pm.pmdata1 = rawUrl;
pm.pmdata2 = newUrl;
*(pmmessage + index) = pm;
return index;
}
//send 替换POST的数据
int __stdcall SendReplacePost(EFD_pmMessage* pmmessage, char* rawPost, char* newPost) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_REPLACE_POST;
pm.pmdata1 = rawPost;
pm.pmdata2 = newPost;
*(pmmessage + index) = pm;
return index;
}
//send 设置新的cookie
int __stdcall SendResetCookie(EFD_pmMessage* pmmessage, char* newCookie) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_RESET_COOKIE;
pm.pmdata1 = newCookie;
*(pmmessage + index) = pm;
return index;
}
//send 设置/添加新的header协议头
int __stdcall SendResetHeader(EFD_pmMessage* pmmessage, char* headerKey,char* headerVal) {
int index = nextPmIndex(pmmessage);
EFD_pmMessage pm = *(pmmessage + index);
pm.type = SEND_RESET_HEADER;
pm.pmdata1 = headerKey;
pm.pmdata2 = headerVal;
*(pmmessage + index) = pm;
return index;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册