在 vc++ 代码中使用 wininet Api 发出 json 发布请求时得到空白响应
Posted
技术标签:
【中文标题】在 vc++ 代码中使用 wininet Api 发出 json 发布请求时得到空白响应【英文标题】:Getting blank response when making json post request using wininet Api in vc++ code 【发布时间】:2012-04-19 07:37:38 【问题描述】:我在 vc++ 中使用 wininet Api 发出 json 发布请求,但我收到空白响应。我已经在提琴手中检查了我的请求标头和请求正文,它在那里工作正常。以下是我的 HttpOpenRequest 和 HttpSendRequest
m_hRequest = HttpOpenRequest(m_hConnect,
_T("POST"),
szURI,
NULL,
lpszReferrer,
NULL,
INTERNET_FLAG_RELOAD | INTERNET_FLAG_KEEP_CONNECTION
| INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_FORMS_SUBMIT
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP,
(DWORD) &m_context);
TCHAR* szHeaders = _T("Content-Type:application/json\r\n");
TCHAR* szPostData = _T("\"command\":\"remotecontrol\",\"method\":\"countmon.getgatestatus\",\"param\":\"2\"");
HttpSendRequest(m_hRequest,
szHeaders,
_tcslen(szHeaders),
szPostData,
_tcslen(szPostData)))
我非常需要有人帮助。在此先感谢:)
【问题讨论】:
【参考方案1】:我能够在应用程序属性中将字符类型从 unicode 更改为多字节字符时得到响应。我不知道为什么,但我认为它无法将 json 字符串作为 unicode 发送
【讨论】:
以上是关于在 vc++ 代码中使用 wininet Api 发出 json 发布请求时得到空白响应的主要内容,如果未能解决你的问题,请参考以下文章
在 wininet 中使用 InternetConnect() API 后,如何判断我是不是仍然连接?
使用 wininet.dll api 从 FTP 站点搜索和检索文件名