私はCプログラムに取り組んでおり、プロキシに接続してから、プロキシを介してデータをプル/Webサイトに送信します。ただし、「CONNECT」ステートメントを機能させた後、どうすればよいか混乱しています。
私の現在のコード:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#define maxlen 2048
int main(int argc, char *argv[])
{
int mysocket;
int len;
char buffer[2000];
char msg[] = "CONNECT http://example.com:80/ HTPP/1.0\r\n\r\n";
mysocket = socket(AF_INET, SOCK_STREAM, 0);
struct sockaddr_in dest;
memset(&dest, 0, sizeof(dest));
dest.sin_family = AF_INET;
dest.sin_addr.s_addr = inet_addr("101.255.60.162");
dest.sin_port = htons(3128);
connect(mysocket, (struct sockaddr *)&dest, sizeof(struct sockaddr));
send(mysocket, msg, strlen(msg), 0);
len = recv(mysocket, buffer, maxlen, 0);
buffer[len] = '\0';
printf("%s \n", buffer);
close(mysocket);
return 0;
その後、別のコマンドを送信しようとしましたが、2番目のコマンドを送信すると、プロキシを経由せずにサイトに直接送信されます。
前もって感謝します!!