[C++] Wysyłanie zapytania socket
Ostatnio zmodyfikowano 2016-01-07 18:03
Nikolass Temat założony przez niniejszego użytkownika |
[C++] Wysyłanie zapytania socket » 2016-01-07 18:03:19 Witam, potrzebuje pomocy w jednej kwestii, łącze się przez socket z serwerem (serwer oczywiście na to przygotowany) mam mniej więcej zarys funkcji (zapytania na port 80 [message = "GET / HTTP/1.1\r\n\r\n";] odpowiada wiec raczej działa) potrzebuje natomiast wysłać zapytanie bardziej skomplikowane, tak to wygląda w PHP: // sends packet with request // 06 - length of packet, 255, 255 is the comamnd identifier, 'info' is a request fwrite($socket, chr(6).chr(0).chr(255).chr(255).'info'); Czy może mi ktoś podpowiedzieć jak to mniej wiece musie wyglądać ? mam jeszcze fragment kodu z Qt QByteArray array; char zero = 0; char six = 6; char _255 = 255; array.append(six); array.append(zero); array.append(_255); array.append(_255); array.append("info"); client->sendByteArray(array);
int checkServer( char * ip, int port ) { int socket_desc; struct sockaddr_in server; char * message, server_reply[ 2000 ]; socket_desc = socket( AF_INET, SOCK_STREAM, 0 ); if( socket_desc == - 1 ) { printf( "Could not create socket" ); } server.sin_addr.s_addr = inet_addr( ip ); server.sin_family = AF_INET; server.sin_port = htons( port ); if( connect( socket_desc,( struct sockaddr * ) & server, sizeof( server ) ) < 0 ) { printf( "connect error" ); return 1; } printf( "Connected\n" ); message = "GET / HTTP/1.1\r\n\r\n"; if( send( socket_desc, message, strlen( message ), 0 ) < 0 ) { printf( "Send failed" ); return 1; } printf( "Data Send\n" ); if( recv( socket_desc, server_reply, 2000, 0 ) < 0 ) { printf( "recv failed" ); } printf( "Reply received\n" ); printf( server_reply ); return 0; }
|
|
« 1 » |