socket http 代理IP销售#include "pch.h"
#include <iostream>
#include <cstdio>
#include<iostream>
#include<string>
#include<WinSock2.h>
#pragma comment(lib,"ws2_32.lib")
#include <time.h>
#include <sys/types.h>
#include <fcntl.h>using namespace std;
const int PORT = 8888;
#define SERVER_IP "127.0.0.1"
#define MaxBufSize 1024
#define _CRT_SECURE_NO_WARINGStypedef unsigned char BYTE;int main() {WSADATA wsd;WSAStartup(MAKEWORD(2, 2), &wsd);SOCKET SocketClient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);unsigned long ul = 1;ioctlsocket(SocketClient, FIONBIO, (unsigned long*)&ul);SOCKADDR_IN ClientAddr;ClientAddr.sin_family = AF_INET;ClientAddr.sin_addr.S_un.S_addr = inet_addr(SERVER_IP);ClientAddr.sin_port = htons(PORT);struct timeval tm;tm.tv_sec = 3;tm.tv_usec = 0;int ret = -1;int n = 0;if (-1 != connect(SocketClient, (SOCKADDR*)&ClientAddr, sizeof(SOCKADDR))){ret = 1; }else{fd_set set;FD_ZERO(&set);FD_SET(SocketClient, &set);if (select(-1, NULL, &set, NULL, &tm) <= 0){ret = -1; }else{int error = -1;int optLen = sizeof(int);getsockopt(SocketClient, SOL_SOCKET, SO_ERROR, (char*)&error, &optLen);if (0 != error){ret = -1; }else{ret = 1; }}}char info[1024], SendBuff[MaxBufSize], RecvBuff[MaxBufSize];while (1) {const char *greeting ="{hello}";int k = 0;k = send(SocketClient, (const char*)greeting, strlen(greeting), 0);ul = 0;ioctlsocket(SocketClient, FIONBIO, (unsigned long*)&ul); if (k>0){cout << "发送成功" << endl;}else if (k<=0){cout << "发送失败或服务器断开连接" << endl;}int n = 0;char RecvBuff[1024];memset(RecvBuff, 0, sizeof(RecvBuff));n = recv(SocketClient, RecvBuff, sizeof(RecvBuff), 0);if (n > 0) {cout << "接收到来自服务器的消息为:" << RecvBuff << endl;}else if (n=0){cout << "服务器异常";}if (!strcmp(RecvBuff, "OK")){cout<< SERVER_IP <<"正常返回";}else{cout<<"服务器异常";}cout << endl;memset(RecvBuff, 0, sizeof(RecvBuff));getchar();}closesocket(SocketClient);WSACleanup();return 0;}