39081

39081



211

Zalążek przeglądarki

Zajmiemy się tym razem inną kwestią, a mianowicie programowaniem sieci. Jest to zagadnienie Itardzo ostatnio popularne. Nas/, program będzie miał za zadanie połączyć się z serwerem, którego adres użytkownik będzie podawał jako pierwszy parametr programu, wysłać zapytanie HTTP i odebrać treść, którą wyśle do nas serwer. Zacznijmy może od tego, że obsługa sieci jest niemal identyczna w różnych systemach operacyjnych. Na przykład między systemami z rodziny Unix oraz Windowsem różnica polega tylko na dołączeniu innych plików nagłówkowych (dla Windowsa winsock2.h). Przeanalizujmy zatem poniższy kiwi:

•include <stdio.h>

•include <stdlib.h>

•include <string.h>

•include <unistd.h>

•include <arpa/met.h>

•include <sys/types.h>

•include <netinet/in.h>

•include <sys/socket.h>

•define MAXRCVLEN 512 •define PORTNUM 80

char *query ■ ”GET / HTTP1.l\n\n";

int main(int arge, char *argv[])

{

char buffer[MAXRCVLEN+l]; int len, nysockot; struct sockaddr.in dest; char *host_ip = NULL; if (arge !* 2) {

printf ("Podaj adres serwera!\n"); exit (1);

)

host.ip • argv[l];

mysocket = socket(AF.INET, SOCK.STREAH, 0); dest.sin.family ■ AF.INET;

dest.sin.addr.s.addr » inet.addr(host.ip); /• ustawiany adre3 hosta •/ dest.sin.port ■ htons (PORTNUK); /• nuner portu przechowuje dwubajtowa zaienna musimy ustalić porządek sieciowy - Big Endian •/ nemset(&(dest.sin.zero), *\0’, 8); /* zerowanie reszty struktury */

connect(mysocket, (struct sockaddr *)4dest.sizeof(struct sockaddr));

/* łączymy się z hostem •/

write (mysocket, query, strlen(query)); /* wysyłamy zapytanie •/ len-read(mysocket, buffer, MAXRCVLDJ); /• i pobioramy odpowiedź •/

buf fer[len]■ ’\0 *;

printf("Rcvd: Xs",buffer);

close(mysocket); /• zamykamy gniazdo •/

return EXIT_SUCCESS;



Wyszukiwarka

Podobne podstrony:
DSCN0893 oto aymiH które mogą przyczynić się do powstaoM akpoeodmua szkolnego dzieci. Program naucza
poetyka005 się tym razem w planie psychologii, można dostrzec w analizo wyżej przykładzie z Mitią K
s197 FTP 197 firmy Tenon. Na koniec rozłączyliśmy się, tym razem wpisując bye. Większość poleceń dos
s197 FTP 197 firmy Tenon. Na koniec rozłączyliśmy się, tym razem wpisując bye. Większość poleceń dos
kopuła dla badanego portfela inwestycyjnego, składającego się tym razem w równych częściach z dwóch
Uczelni miał miejsce Bal Seledynowy. XIX edycja Balu odbyła się tym razem w konwencji lwowskiej
Drzewo życia5 lach w celu wywołania urodzaju”. Symbolika powtarza się — tym razem moc zapładniania
poetyka005 się tym razem w planie psychologii, można dostrzec w wyżej przykładzie z Mitią Karamazowe
DYKTANDA Z UŚMIECHEM CZYLI JAK ZOSTAĆ MISTRZEM ORTOGRAFII (38) będzie się Tym razem musisz uzupełnić
684bfbd0 Która... spaliła się tym razem
80261 Zdjęcie0520 (6) ^kju s Powiobul, te „mgdybysobitnit,łWrf ? UW; znajdowali się tym razem w kąc
rebus8 Uff, udało nam się tym razem. Nie wszyscy o nas dbają Śmiecą wypalają / trawy i robią mnóstwo
Masz temat? Napisz listdo naszej gazety redakcja@igazetyinternetowe.pl Zajmiemy się tym!

więcej podobnych podstron