Att skapa en server från grunden är en stor uppgift. Men att göra det kan förbättra dina programmeringskunskaper mycket och kan göra det möjligt för dig att ändra det efter dina behov. Denna handledning kommer att använda python och lågnivå -sockelprogrammering för att skapa en server så att klienter kan kommunicera med varandra. Detta täcker också bara processen på Windows. Viss information kommer att ges i instruktionerna, men om du bara vill ha koden finns den i figurerna. (Obs! Instruktionerna som presenteras här är bara grunderna).
Steg
Metod 1 av 3: Installera Python
Steg 1. Ladda ner Python
Gå till pythons huvudsida och ladda ner Python 2.7.10. Efter nedladdningen går du igenom stegen i python -installationsprogrammet med standardinställningar. Denna länk finns här
Steg 2. Kör IDLE (Python GUI)
Gå in i Python 2.7 -mappen och kör IDLE (Python GUI), python ska nu vara i din startmeny där IDLE finns.
Steg 3. Skapa en ny fil
Gå till Arkiv i det övre vänstra hörnet av det nyöppnade fönstret och välj Ny fil, du bör ha ett tomt fönster öppet med titeln Untitled.
Metod 2 av 3: Skapa servern
Steg 1. Importera nödvändiga moduler
De två modulerna som behövs för denna kod är "socket" och "threading". Detta kan göras genom att skriva på första raden "från socketimport *" och på nästa rad "importtrådning".
Steg 2. Skapa en ny tråd
Detta kommer att hantera att matcha 2 klienter med varandra. Trådar är processer som kan köras medan huvudprogrammet körs. Skriv exakt som bilden visar. Detta kommer att ställa in variablerna i tråden så att de kan kallas senare.
Steg 3. Skapa trådprocess
För att kunder ska kunna kommunicera direkt måste du skicka till varandras information, inklusive deras IP -adress och vilken port de använder. För att göra detta måste du skapa ett socketobjekt som kan göras med "variableName = socket (AF_NET, SOCK_DGRAM)". Detta skapar ett socketobjekt som använder UDP -protokollet. Nästa Bind uttaget till din IP -adress med ett visst portnummer med "roomSocket.bind (('', self.port))" Det tomma området står för din egen datorns IP -adress i ditt lokala nätverk och self.port tilldelar portnummer som ingår när du ringer den här tråden. Det sista du behöver göra med det här uttaget är att skicka information genom det. Eftersom detta är ett UDP -uttag måste du helt enkelt känna till IP: n och porten på datorn du skickar information till, syntaxen för att skicka är "socketName.sendto (IP, port)"
Steg 4. Skapa de globala variablerna
För detta steg måste du definiera flera variabler, som inkluderar en användarlista, portnummer, klientantal, klienter för tråden och rums -ID. Du måste också skapa ett uttag så att din server kan interagera med internet. Detta görs genom att skapa ett nytt socketobjekt och binda det till din IP -adress med ett visst portnummer. (Portnumret kan vara vad som helst men det är vanligtvis något högt för att undvika att antingen använda en annan process eller använda reserverade portnummer.)
Steg 5. Skapa huvudserverprocessen
Detta kommer att ta in klientadress och starta tråden som skapades tidigare. Detta inkluderar att vänta på att ta emot data från bufferten och få klientadressen och spara den för att användas i tråden. Sättet att få information från ditt uttag är att ringa med "socketName.recvfrom (1024)", antalet här är bara mängden byte som läses åt gången. I det här exemplet lagrar vi det i en variabel som heter userAddr, och när detta händer kan du spara den här adressen i listan som skapades i steg 4. If -satsen skapar en rumstråd om två personer ansluter och skapar bara ett rum när två olika kopplingar inträffar.
Steg 6. Spara ditt arbete
Detta bör göras i en katalog som är lätt att komma åt så att den lätt kan nås för testning.
Metod 3 av 3: Testning
Steg 1. Skapa en testklient
Detta är en mycket grundläggande klient som bara hanterar om servern hade skickat den andra klientens information till den aktuella klienten eller inte. Observera att denna kod till skillnad från serverkoden kräver ett servernamn. Om du kör allt detta på en dator bör servernamnet vara namnet på din dator. Du kan ta reda på datorns namn genom att högerklicka på Den här datorn och gå till egenskaper.
Steg 2. Spara ditt arbete
Detta bör finnas i samma katalog som serverkoden.
Steg 3. Öppna tre olika kommandofönster
Gå till startmenyn och skriv "cmd" i sökfältet och tryck på enter. Gör detta tre gånger. Fönstren ska se ut så här.
Steg 4. Kör programmen
Du måste skriva in den exakta sökvägen när du använder kommandofönstret. Du måste köra serverkoden först i ett kommandofönster och sedan testklientkoden på de andra två. Om allt lyckades får du något av dessa meddelanden i ditt fönster.
Varningar
- Detta program fungerar bara när det körs och testas klienter på samma lokala nätverk.
- Python 2.7.10 är föråldrat och närmar sig slutet på sitt stöd. För att fortsätta skapa bra servrar rekommenderas att den senaste versionen av Python 3 installeras istället.