如何利用post来提交一个数据库查询请求呢?

SGUav 2012-03-02 01:54:45
程序如下,但是如何构造 post 提交的内容呢?这个我有点不大清楚。网页的post内容我已经用抓包工具给抓取了

谢谢!






CString myData;
char sRecived[1024];


CString strHeaders = _T("Content-Type: application/x-www-form-urlencoded"); //网页的信息头

CString strFormData;

UpdateData(TRUE);

strFormData = m_EditPost;


CInternetSession InternetSession;
CHttpConnection *PHttpConnection = InternetSession.GetHttpConnection(_T("111.111.111.111/data/query"), (INTERNET_PORT) 80);
CHttpFile *pHttpFile = PHttpConnection->OpenRequest(CHttpConnection::HTTP_VERB_POST, strFormData);


if(pHttpFile)
{
pHttpFile->AddRequestHeaders(strHeaders);
pHttpFile->SendRequest(NULL, 0, strFormData.GetBuffer(0), (DWORD)strFormData.GetLength());


while (pHttpFile->ReadString((LPTSTR)sRecived,1024))
{
Utf8ToAnsi(sRecived,sRecived,1024);
myData+=sRecived;
}

m_EditResult = myData;


}


//获取的信息写入文件中
// FILE* fp;
// fp = fopen("1.txt", "wb");
// fwrite(szReceiveBuff, strlen(szReceiveBuff), 1, fp);
// fclose(fp);

if (pHttpFile != NULL)
{
pHttpFile->Close();
delete pHttpFile;
pHttpFile = NULL;
}
if (PHttpConnection != NULL)
{
PHttpConnection->Close();
delete PHttpConnection;
PHttpConnection = NULL;
}
InternetSession.Close();

UpdateData(FALSE);

...全文
280 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
gold_water 2012-03-02
  • 打赏
  • 举报
回复
把需要的内容组织成JSON字符串,然后POST给服务器即可,当然也可以自己写SOCKET.
SGUav 2012-03-02
  • 打赏
  • 举报
回复
那么如何提交表单呢?
获取网页数据、分析网页数据我都没问题,就是如何构造提交表单,或者提交post我不了解
谢谢!
LuciferStar 2012-03-02
  • 打赏
  • 举报
回复
对于网站,如果没有提供直接的数据库查询接口,那么只能通过模拟提交表单了。
提交表单后,分析反馈的网页数据,得到你要的结果。

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧