HTTPS协议POST数据的问题,高手请进来帮帮忙

coolzdp 2006-02-23 10:01:31
用下面的代码post xml到服务器页。
客户端不需要证书。
但是收不到任何数据,发送似乎也不成功,但是服务器是远端的没法调试。
抓包看了一下发出去的数据包确实是HTTPS包。
但就是不成功。没思路了抓狂。请教高人相助啊!分也就剩60了抱歉!
嫌不够我再用另一个账号给。

参考的这篇文章
http://www.codeproject.com/internet/wininet_ssl___certificate.asp?df=100&forumid=15078&exp=0&select=930788#xx930788xx


BOOL CXXX::SendHttpRequest(CString strXml, CString &strRcv)
{
void* m_hInternet = NULL;
void* m_hSession = NULL;
void* m_hRequest = NULL;
void* m_hStore = NULL;
void* m_pContext = NULL;

int m_secureFlags = INTERNET_FLAG_RELOAD|INTERNET_FLAG_KEEP_CONNECTION|INTERNET_FLAG_NO_CACHE_WRITE|
INTERNET_FLAG_SECURE|INTERNET_FLAG_IGNORE_CERT_CN_INVALID;

try
{
m_hInternet = InternetOpen("MY app", INTERNET_OPEN_TYPE_PRECONFIG , NULL, NULL, 0);
if (!m_hInternet)
{
::AfxMessageBox("Cannot open internet");
//m_lastErrorCode = GetLastError();
return false;
}

m_hSession = InternetConnect(m_hInternet, "www.XXX.com", 443, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 0);
if (!m_hSession) {
::AfxMessageBox("Cannot connect to internet");
//m_lastErrorCode = GetLastError();
//ClearHandles();
return false;
}
m_hRequest = HttpOpenRequest(m_hSession,
"POST",
"/service/page.cgi",
NULL,
"",
NULL,
m_secureFlags,
0);
if (!m_hRequest) {
::AfxMessageBox("Cannot perform http request");
//m_lastErrorCode = GetLastError();
//ClearHandles();
return false;
}

int result = HttpSendRequest(m_hRequest, NULL, 0, (void*)((LPCTSTR)strXml), strXml.GetLength());
if (result)
{
::AfxMessageBox("yes");//能执行到这里
}
}
catch(...) {
::AfxMessageBox("Memory Exception occured");
//m_lastErrorCode = GetLastError();
return false;
}

DWORD dwNumberOfBytesRead;
char sz[2048];
int result;
strRcv = "";
do
{
result = InternetReadFile(m_hRequest, sz, 2047, &dwNumberOfBytesRead);
sz[dwNumberOfBytesRead] = '\0';
int x = strlen(sz);
strRcv += sz;
memset(sz, 0, 2048);

} while(result && dwNumberOfBytesRead != 0);

::AfxMessageBox(strRcv);//strRcv为空,收不到任何数据?
return TRUE;
}
...全文
444 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxfvc 2006-05-12
  • 打赏
  • 举报
回复
我也是
coolzdp 2006-02-24
  • 打赏
  • 举报
回复
Malformed HTTPS request 400 bad request
coolzdp 2006-02-24
  • 打赏
  • 举报
回复
连接上了,返回400错误:<
coolzdp 2006-02-24
  • 打赏
  • 举报
回复
如果把
secureFlags2 = INTERNET_FLAG_EXISTING_CONNECT(普通post)
则无法连接服务器,

m_secureFlags = INTERNET_FLAG_RELOAD|INTERNET_FLAG_KEEP_CONNECTION|INTERNET_FLAG_NO_CACHE_WRITE|
INTERNET_FLAG_SECURE|INTERNET_FLAG_IGNORE_CERT_CN_INVALID;

可以连上,但是post没法反应也没有响应是怎么回事啊
duyhui 2006-02-23
  • 打赏
  • 举报
回复
区别应该不大,你可以实际post试试.看看服务器能不能收到
coolzdp 2006-02-23
  • 打赏
  • 举报
回复
如果服务器端是CGI, ISAPI的话是不是POST跟ASP有区别?
内容概要:本文系统介绍了基于MATLAB平台的风力涡轮机雷达信号仿真研究,涵盖完整的仿真代码、实测数据及配套学术文章,重点实现雷达信号处理、风力涡轮机回波建模、微动特征提取与时频分析等核心技术。通过高精度模拟风机叶片旋转引起的调制效应与雷达散射截面变化,深入揭示风力发电场对周边雷达系统造成的电磁干扰机制,为雷达杂波抑制、目标检测优化及空域兼容性设计提供理论支撑与技术验证平台。资源内容还可拓展应用于无人机路径规划、电动汽车调度、电力系统优化等交叉领域,展现MATLAB在复杂系统仿真中的强大集成能力。; 适合人群:具备MATLAB编程基础与雷达信号处理知识的科研人员,适用于从事新能源并网影响评估、雷达系统设计、电磁兼容分析、智能电网或远程 sensing 领域研究的研究生、工程师及高校教师; 使用场景及目标:①开展风电场对空中监视雷达干扰效应的仿真评估;②研究风电杂波的时频特性与微多普勒特征建模方法;③开发针对非合作目标干扰的雷达抗干扰算法与信号分离技术;④作为科研项目申报、论文复现或工程预研的技术原型工具包; 阅读建议:建议结合百度网盘提供的完整资料包(含代码、数据集与参考文献)同步学习,优先运行示例脚本以掌握仿真流程,再根据具体研究需求调整系统参数进行扩展实验,同时可借鉴文中提到的其他MATLAB仿真案例以提升研究深度与广度。

18,357

社区成员

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

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