当前位置: 首页 > news >正文

app网站开发流程图网站服务器机房

app网站开发流程图,网站服务器机房,北京商场招商,百度seo公司文章目录 WINHTTP忽略HTTPS证书WINHTTP使用TLS协议版本 WINHTTP忽略HTTPS证书 发布了Wininet库忽略Https证书文章之后有朋友问我如果使用WINHTTP发起忽略证书的方法, 下列粘出代码可以看到跟Wininet是一样的不在过多赘述#xff0c;不懂的朋友可以看我发的链接说明。C发起Htt… 文章目录 WINHTTP忽略HTTPS证书WINHTTP使用TLS协议版本 WINHTTP忽略HTTPS证书 发布了Wininet库忽略Https证书文章之后有朋友问我如果使用WINHTTP发起忽略证书的方法, 下列粘出代码可以看到跟Wininet是一样的不在过多赘述不懂的朋友可以看我发的链接说明。C发起Https请求 #include Windows.h #include Winhttp.h #include stdio.h#pragma comment(lib, winhttp.lib)#define TRANSFER_SIZE 1024bool PerformHttpRequest() {HINTERNET hSession WinHttpOpen(L, WINHTTP_ACCESS_TYPE_DEFAULT_PROXY, WINHTTP_NO_PROXY_NAME, WINHTTP_NO_PROXY_BYPASS, 0);if (!hSession) {return false;}//lpszServerName 是IP或者域名LPCWSTR lpszServerName L192.168.99.99;//nServerPort 端口INTERNET_PORT nServerPort 443;HINTERNET hConnect WinHttpConnect(hSession, lpszServerName, nServerPort, 0);if (!hConnect) {WinHttpCloseHandle(hSession);return false;}HINTERNET hRequest WinHttpOpenRequest(hConnect, LGET, L/Login, NULL, WINHTTP_NO_REFERER, WINHTTP_DEFAULT_ACCEPT_TYPES, WINHTTP_FLAG_SECURE);if (!hRequest) {WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}BOOL bResult WinHttpSendRequest(hRequest, WINHTTP_NO_ADDITIONAL_HEADERS, 0, WINHTTP_NO_REQUEST_DATA, 0, 0, 0);if (!bResult GetLastError() ERROR_WINHTTP_SECURE_FAILURE) {//忽略所有异常Https CA证书问题// SECURITY_FLAG_IGNORE_ALL_CERT_ERRORS 也可以DWORD dwFlags SECURITY_FLAG_IGNORE_UNKNOWN_CA |SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE |SECURITY_FLAG_IGNORE_CERT_CN_INVALID |SECURITY_FLAG_IGNORE_CERT_DATE_INVALID;WinHttpSetOption(hRequest, WINHTTP_OPTION_SECURITY_FLAGS, dwFlags, sizeof(dwFlags));bResult WinHttpSendRequest(hRequest, WINHTTP_NO_ADDITIONAL_HEADERS, 0, WINHTTP_NO_REQUEST_DATA, 0, 0, 0);}if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}bResult WinHttpReceiveResponse(hRequest, NULL);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}wchar_t szBuff[TRANSFER_SIZE];DWORD dwReadSize;bResult WinHttpQueryHeaders(hRequest, WINHTTP_QUERY_RAW_HEADERS_CRLF, WINHTTP_HEADER_NAME_BY_INDEX, szBuff, dwReadSize, WINHTTP_NO_HEADER_INDEX);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}wprintf(L%ws\n, szBuff);DWORD dwBytesAvailable;bResult WinHttpQueryDataAvailable(hRequest, dwBytesAvailable);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}if (dwBytesAvailable TRANSFER_SIZE) {wprintf(LData too long %d /b\n, GetLastError(), dwBytesAvailable);WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}DWORD dwBytesRead;ZeroMemory(szBuff, TRANSFER_SIZE);bResult WinHttpReadData(hRequest, szBuff, dwBytesAvailable, dwBytesRead);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}printf(%s\n, szBuff);WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return true; }int main() {if (PerformHttpRequest()) {return 0;}else {return 1;} } WINHTTP使用TLS协议版本 详细很多朋友使用WINHTTP是为了在低版本系统运行比如WIN7或2008这些系统使用TLS 1.0/1.1 无法使用Wininet库的TLS 1.2因此使用WINHTTP下面粘出代码是低版本修改了TLS的库代码#include Windows.h #include Winhttp.h #include stdio.h#pragma comment(lib, winhttp.lib)#define TRANSFER_SIZE 1024bool PerformHttpRequest() {HINTERNET hSession WinHttpOpen(L, WINHTTP_ACCESS_TYPE_DEFAULT_PROXY, WINHTTP_NO_PROXY_NAME, WINHTTP_NO_PROXY_BYPASS, 0);if (!hSession) {return false;}// 设置要使用的协议 TLS 1.1,需要注意服务端也需要支持TLS 1.1否则无法使用DWORD dwFlags WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_1;if (!WinHttpSetOption(hSession, WINHTTP_OPTION_SECURE_PROTOCOLS, dwFlags, sizeof(dwFlags))) {WinHttpCloseHandle(hSession);return false;}//lpszServerName 是IP或者域名LPCWSTR lpszServerName L192.168.99.99;//nServerPort 端口INTERNET_PORT nServerPort 443;HINTERNET hConnect WinHttpConnect(hSession, lpszServerName, nServerPort, 0);if (!hConnect) {WinHttpCloseHandle(hSession);return false;}HINTERNET hRequest WinHttpOpenRequest(hConnect, LGET, L/Login, NULL, WINHTTP_NO_REFERER, WINHTTP_DEFAULT_ACCEPT_TYPES, WINHTTP_FLAG_SECURE);if (!hRequest) {WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}BOOL bResult WinHttpSendRequest(hRequest, WINHTTP_NO_ADDITIONAL_HEADERS, 0, WINHTTP_NO_REQUEST_DATA, 0, 0, 0);if (!bResult GetLastError() ERROR_WINHTTP_SECURE_FAILURE) {//忽略所有异常Https CA证书问题// SECURITY_FLAG_IGNORE_ALL_CERT_ERRORS 也可以DWORD dwFlags SECURITY_FLAG_IGNORE_UNKNOWN_CA |SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE |SECURITY_FLAG_IGNORE_CERT_CN_INVALID |SECURITY_FLAG_IGNORE_CERT_DATE_INVALID;WinHttpSetOption(hRequest, WINHTTP_OPTION_SECURITY_FLAGS, dwFlags, sizeof(dwFlags));bResult WinHttpSendRequest(hRequest, WINHTTP_NO_ADDITIONAL_HEADERS, 0, WINHTTP_NO_REQUEST_DATA, 0, 0, 0);}if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}bResult WinHttpReceiveResponse(hRequest, NULL);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}wchar_t szBuff[TRANSFER_SIZE];DWORD dwReadSize;bResult WinHttpQueryHeaders(hRequest, WINHTTP_QUERY_RAW_HEADERS_CRLF, WINHTTP_HEADER_NAME_BY_INDEX, szBuff, dwReadSize, WINHTTP_NO_HEADER_INDEX);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}wprintf(L%ws\n, szBuff);DWORD dwBytesAvailable;bResult WinHttpQueryDataAvailable(hRequest, dwBytesAvailable);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}if (dwBytesAvailable TRANSFER_SIZE) {wprintf(LData too long %d /b\n, GetLastError(), dwBytesAvailable);WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}DWORD dwBytesRead;ZeroMemory(szBuff, TRANSFER_SIZE);bResult WinHttpReadData(hRequest, szBuff, dwBytesAvailable, dwBytesRead);if (!bResult) {WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return false;}printf(%s\n, szBuff);WinHttpCloseHandle(hRequest);WinHttpCloseHandle(hConnect);WinHttpCloseHandle(hSession);return true; }int main() {if (PerformHttpRequest()) {return 0;}else {return 1;} }
http://www.zqtcl.cn/news/361689/

相关文章:

  • 周口网站开发西安市建设厅网站
  • 怎么授权小说做游戏网站论坛网站开发语言
  • 烟台商城网站建设怎么样引流顾客到店方法
  • 北京做网站公司的排名python基础教程pdf
  • 网站建设为什么学flash建设工程询价网站有哪些
  • 网站内容建设机制企业管理模式有哪些
  • 中山网站建设文化价格建网站域名注册
  • 手机电影网站怎么做大连最新发布
  • 珠三角网站建设网页制作专业知识
  • 罗湖微信网站制作深圳做网站哪个公司最好
  • ps如何做ppt模板下载网站网站模板分类
  • 网站建设在线网站服务器和直播服务器一样吗
  • iapp网站做软件教程朋友圈广告投放平台
  • 优门设 网站网站代理 正规备案
  • 衡水做wap网站上海做网站吧
  • seo推广思路seo线下培训班
  • 没有备案的网站怎么做淘宝客html5开发手机网站
  • 酒店旅游团购网站建设推广普通话实践总结
  • 基本的网站开发技术路线建设网站的好处有哪些
  • 网站排行怎么做wordpress all in one seo插件
  • 河北特定网站建设推荐wordpress添加vip用户组
  • 北京商城网站建设地址asp.net网站开发 pdf
  • 如何用网页制作网站龙岩门户网站
  • 中国建设银行官网站下载建设网站弹出后加载不进去
  • 广告网站制作多少钱建设工程合同甲方
  • 一号网站建设誉重网站建设
  • 网站seo优化查询网站开发最合适的搭配
  • 做文员的网站知乎qq小程序怎么打开
  • 网站外链建设分析wordpress生成验证码发送代码
  • 网站设计与制作的过程珠海网站建设 旭洁科技