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

网站建设哪个公司比较好注册一个商标要花多少钱

网站建设哪个公司比较好,注册一个商标要花多少钱,龙岩天宫山天气预报,html5高端网站建设一、相关知识 HTTP 客户端用C语言实现就是通过SOCKET 链接通道#xff0c;按照HTTP协议把数据包做装好#xff0c;通过SOCKET连接通道#xff0c;发送#xff0c;接收。我们把收到的数据按协议#xff0c;拆分开#xff0c;再按我梦的意愿吧没部分数据展示或存储起来就可…一、相关知识 HTTP 客户端用C语言实现就是通过SOCKET 链接通道按照HTTP协议把数据包做装好通过SOCKET连接通道发送接收。我们把收到的数据按协议拆分开再按我梦的意愿吧没部分数据展示或存储起来就可以了。HTTP协议https://blog.csdn.net/weixin_38087538/article/details/82838762 HTTPS 应用百度百科的解释【HTTPS 主要由两部分组成HTTP SSL / TLS也就是在 HTTP 上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过 TLS 进行加密所以传输的数据都是加密后的数据。】 简单实现HTTPS客户端也就是说我们建立一个SSL通道然后按照HTTP协议处理数据就可以了和HTTP客户端相比就是把SOCKET链接通道换成SSL连接通道。那我们就要研究SSL链接通道的建立与断开。 网上搜到两幅图比较好很容易理解SSL的建立过程。应用于https://blog.csdn.net/Aquester/article/details/7635573 SSL客户端图 SSL服务端图 二、下载配置OpenSSL-Win64 库 然后我们需要下载 OpenSSL-Win64 库  OpenSSL-Win 主页为https://slproweb.com/products/Win32OpenSSL.html OpenSSL-Win64 https://slproweb.com/download/Win64ARMOpenSSL-3_0_2.exe https://slproweb.com/download/Win64OpenSSL-1_1_1n.exe 下载完后直接安装就可以了一般默认配置我的安装目录选在 D:\Program Files\OpenSSL-Win64 三、Visual Studio 配置 OpenSSL 点击项目--属性 打开属性界面点击VC 目录 配置(C): 选 “所有配置” “平台(P):” 选 自己需要的 32 位或 64位 ” 包含目录“ 添加 你 OpenSSL-Win64 安装的目录位置下的 头文件位置  D:\Program Files\OpenSSL-Win64\include ” 包含目录“ 添加 你 OpenSSL-Win64 安装的目录位置下的 lib位置  D:\Program Files\OpenSSL-Win64\lib Visual Studio 配置 OpenSSL完成 四、撸代码 #includetchar.h #includeWinSock2.h #includeWS2tcpip.h #includeiostream #includeopenssl\ssl.h #include stdio.h #include windows.h #define BUFF_SIZE 1024 #pragma warning(disable : 4075) #pragma warning(disable : 4996) #pragma warning(disable : 6387) #pragma comment(lib,ws2_32.lib) #pragma comment(lib,libssl.lib) #pragma comment(lib,libcrypto.lib)CONST INT RECV_SIZE 8192;char* UTF8ToANSI(const char* str);/*多字符转换为宽字符 --- ANSI -to- Unicode*/ wchar_t* ANSIToUnicode(const char* str) {size_t textlen;wchar_t* result;textlen MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);result (wchar_t*)malloc((textlen 1) * sizeof(wchar_t));if (nullptr ! (result (wchar_t*)malloc((textlen 1) * sizeof(wchar_t)))){memset(result, 0, (textlen 1) * sizeof(wchar_t));MultiByteToWideChar(CP_ACP, 0, str, -1, (LPWSTR)result, textlen);return result;}return 0; }/*宽字符转换为多字符 --- Unicode -to- ANSI*/ char* UnicodeToANSI(const wchar_t* str) {char* result;size_t textlen;textlen WideCharToMultiByte(CP_ACP, 0, str, -1, NULL, 0, NULL, NULL);result (char*)malloc((textlen 1) * sizeof(char));if (nullptr ! result){memset(result, 0, sizeof(char) * (textlen 1));WideCharToMultiByte(CP_ACP, 0, str, -1, result, textlen, NULL, NULL);return result;}return 0; }/*UTF8转换为宽字符 --- UTF8 -to- Unicode */ wchar_t* UTF8ToUnicode(const char* str) {size_t textlen;wchar_t* result;textlen MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);result (wchar_t*)malloc((textlen 1) * sizeof(wchar_t));if (nullptr ! result){memset(result, 0, (textlen 1) * sizeof(wchar_t));MultiByteToWideChar(CP_UTF8, 0, str, -1, (LPWSTR)result, textlen);return result;}return 0; }/*宽字符转换为UTF8 --- Unicode -to- UTF8 */ char* UnicodeToUTF8(const wchar_t* str) {char* result;size_t textlen;textlen WideCharToMultiByte(CP_UTF8, 0, str, -1, NULL, 0, NULL, NULL);result (char*)malloc((textlen 1) * sizeof(char));if (nullptr ! result){memset(result, 0, sizeof(char) * (textlen 1));WideCharToMultiByte(CP_UTF8, 0, str, -1, result, textlen, NULL, NULL);return result;}return 0; }/*多字符转换为UTF8 --- Unicode -to- UTF8 */ char* ANSIToUTF8(const char* str) {return UnicodeToUTF8(ANSIToUnicode(str)); }/*UTF8转换为多字符 --- UTF8 -to- ANSI */ char* UTF8ToANSI(const char* str) {return UnicodeToANSI(UTF8ToUnicode(str)); }INT _tmain(INT argc, LPTSTR argv[]) {//启初始化wsaWSADATA wsadData;if (0 ! WSAStartup(MAKEWORD(2, 2), wsadData)) {printf_s(初始化 WSAStartup 失败);return 0;}//获取Host的IP地址等信息ADDRINFOT aiHints;ZeroMemory(aiHints, sizeof(ADDRINFOT));aiHints.ai_family AF_INET;aiHints.ai_flags AI_PASSIVE;aiHints.ai_protocol 0;aiHints.ai_socktype SOCK_STREAM;std::wstring wstrHost TEXT(www.baidu.com);PADDRINFOT paiResult;GetAddrInfo(wstrHost.c_str(), NULL, aiHints, paiResult);//创建套接字SOCKET sSocket socket(AF_INET, SOCK_STREAM, 0);if (sSocket SOCKET_ERROR){std::wcout Error socket std::endl;return -1;}//连接HostSOCKADDR_IN sinHost{};sinHost.sin_addr ((LPSOCKADDR_IN)paiResult-ai_addr)-sin_addr;sinHost.sin_family AF_INET;sinHost.sin_port htons(443);if (connect(sSocket, (LPSOCKADDR)sinHost, sizeof(SOCKADDR_IN)) SOCKET_ERROR){std::wcout Error connect std::endl;return -1;}//初始化OpenSSL库//虽然不知道为什么但是不加这三行似乎并不会导致什么问题在不加这3行的情况下测试了几个网站并没有发现任何问题喵SSL_library_init(); //SSL库初始化SSLeay_add_ssl_algorithms(); //载入所有SSL算法SSL_load_error_strings(); //载入所有SSL错误消息//创建SSL会话环境等SSL_CTX* pctxSSL SSL_CTX_new(TLS_client_method()); //产生一个SSL_CTX 数据结构if (pctxSSL NULL){std::wcout Error SSL_CTX_new std::endl;return -1;}SSL* psslSSL SSL_new(pctxSSL); //产生一个SLL 数据结构if (psslSSL NULL){std::wcout Error SSL_new std::endl;return -1;}SSL_set_fd(psslSSL, sSocket); //将 socket 载入到 SSL 中INT iErrorConnect SSL_connect(psslSSL); //建立 SSL 链接if (iErrorConnect 0){std::wcout Error SSL_connect, iErrorConnect iErrorConnect std::endl;return -1;}std::wcout SSL connection using SSL_get_cipher(psslSSL) std::endl;//发包std::string strWrite GET https://www.baidu.com/ HTTP/1.1\r\nHost: www.baidu.com\r\nConnection: close\r\n\r\n;INT iErrorWrite SSL_write(psslSSL, strWrite.c_str(), strWrite.length()); //通过SSL链接发送数据if (iErrorWrite 0){std::wcout Error SSL_write std::endl;return -1;}//收包并输出//这里接受的是char形式的所以中文会乱码//如果要正常显示中文需要再转换为wchar_t或std::wstringLPSTR lpszRead new CHAR[RECV_SIZE];INT iLength 1;while (1 (iLength SSL_read(psslSSL, lpszRead, RECV_SIZE))) //通过SSL链接接收数据{std::cout UTF8ToANSI(lpszRead) std::endl;}delete[] lpszRead;SSL_shutdown(psslSSL); //关闭 SSL 链接SSL_free(psslSSL); //释放 SSL 数据结构体closesocket(sSocket); //释放 SOCKETSSL_CTX_free(pctxSSL); //释放 SSL_CTX 数据结构体return 0; }
http://www.w-s-a.com/news/340336/

相关文章:

  • 佛山免费发布信息的网站oa办公系统排行榜
  • 南湖区建设街道办事处网站汕头建设银行各支行电话
  • 复古风格网站网站套餐方案
  • 界面设计做的好的网站旅游商城网站模板
  • 大型电子商务网站 服务器硬件 cpu 内存 硬盘 2014美食网站开发意义
  • 建立网站的目的和意义网站建设寻求
  • 邢台手机网站建设设计师培训心得
  • 营销网站怎么做丽水微信网站建设哪家好
  • 南昌定制网站开发多少钱东阿县城市建设局网站
  • 浙江网站建设公司南昌seo招聘
  • 工业软件有哪些专业seo站长工具全面查询网站
  • 山东兴华建设集团有限公司网站和京东一样做电子产品的网站
  • 网站建设谢辞关于h5的网站模板
  • 网站改版提交WordPress360收录
  • 省级网站 开发建设 资质在国外怎么做网站
  • 中商华兴建设有限公司网站我的世界查找建筑网站
  • 广东网站设计公司百度推广免费送网站
  • 高密做网站哪家好网站建设预算
  • 免费wordpress网站模板重庆如何做聚政网站
  • 人才网站app建设建议系统开发生命周期法的优点表现
  • 门户网站想要微信登录怎么做湖南网站seo推广
  • 襄阳 网站建设管理系统网站
  • 重庆工程建设招标投标交易信息网广州外贸seo优化
  • 一个一起做网站东莞设计兼职网站建设
  • 杭州网站程序开发公司在哪个公司建设网站好
  • 网店的网站设计方案济南手机建站价格
  • 网站做了301重定向域名会自动跳转吗唐山地方志网站建设
  • 学校网站建设说明书海南省建设执业资格注册管理中心网站
  • 东莞哪家网站建设好网站风格设定
  • 自驾游网站模板搭建wordpress步骤