25. april 2003 - 10:34Der er
35 kommentarer og 1 løsning
Chatserver i asp.net
Hey, er det muligt at lave et chatsystem bestående af en server skrevet i asp.net (C#) som skal tilsluttes af klienter skrevet i Java-applets? Hvordan (skitse)?
Du vil jo nok ikke udvikle din char server i asp.net - men du vil bruge C# sammen med noget socket. På den måde skulle der ikke være nogle problemer da det jo bare er alm. socket programmering. Om klienten så er skrevet i Java, C++ mm. er jo så at sige lige meget - bare den kender den protokol du laver.
som guidmaster skriver, så giver det ikke megen mening at lave en server i asp.net. Dog kan du lave et consol-program der lytter på bestemte porte som dine klienter så kan connecte, eller sende data til.
Ja jeg er klar over at det helt konkret er C# som koden skal skrives i :-) Som jeg forstår jer så ER det muligt på den måde at lave en online web-chat?
repsak>> hvis det er fordi at appletten skal køre på en webside, så er java nok den bedste løsning, men ellers kan jeg helt klart anbefale at du laver klienten i c# også, og drager nytte af .Net remoting. Det er virkelig fedt bygget op, og det tager ingen tid at lave server/klient-programmer hvis man bruger det :)
cyberfessor -> jo klienten skal køre på en webside... Jeg er ikke inde i .NET remoting, men antager at det ikke tar så lang tid at opstille en klient i en applet. Men enig - .NET kører vist en del hurtigere end java
repsak>> du skal jo IKKE bruge asp.net til at lave chatserveren. asp.net er til at lave WEBSITES med... det du skal jave lavet er et PROGRAM, helt normalt windows-program, som startes ved at dobbelklikke på exefilen.
Ok, jeg tror at vi snakker forbi hinanden :-) Men det som jeg ikke lige kan lure er: Chatserveren skal vel køre på web-serveren ik? Hvordan sikrer jeg mig så at denne exefil kører. Jeg har vel ikke direkte adgang til at 'dobbelt-klikke' på en fil på web-serveren. Derfor troede jeg at jeg vha codebehind (C#) kunne lave 'et eller andet'... Håber du forstår mit problem :-)
repsak>> det kan du vel godt? det kommer selvfølgelig an på hvad du lægger i betydningen "server". Du kan ikke connecte til den ved hjælp af sockets, men kalder forskellige metoder på den ved hjælp af SOAP. Hvis rutinen på serveren har noget ouptut sendes det tilbage til klienten. Hos Microsoft kalder de det for XML Webservices, mens det hedder J2EE hos Java, så mon ikke du ved nogenlunde hvad det er så?
Tja... men jeg tror ikke at det er det som jeg har brug for... Det må da være muligt at placere en C#server så den kan forbinde til sockets på ganske normal vis... uden at benytte webservices eller andre fanzy ting :-)
repsak>> desværre... IIS er jo egentlig et session-state miljø, så du kan ikke have en applikation kørende, like, forever, uden at der kommer requests til den.
hehehe... jeg kender kun den på ofir. Jeg ved godt det er flueknepperi, men det er ikke hvad man normalt ville kalde for en chat. Det er ikke andet end en tagwall der står og refresher sig selv ;) Det er noget at det simpleste chatsystem man kan lave, som er baseret på en bruger poster noget data til en side, som så gemmer det enten i en database, og derefter sender den opdatere version af siden retur. samtidig har siden et meta-refresh tag:
repsak>> joo... :) men du kan ikke lave en rigtig chatserver med asp.net. Det skal være et dedikeret serverprogram der kører på serveren. Ligesom Exchange Server, bare meget meget mindre og til chat ;)
Ok jeg forstår (måske) :-) Kan jeg så ikke placere en kørende chatserver på web-serveren helt uden om asp.net så? Jeg forstår ikke at det skal være så svært for et sprog som C# :-)
repsak>> det er da heller ikke så svært. Det er ikke C# der er begrænsningen men IIS, som jo netop afvikler asp.net-sider. Det jeg ikke forstår, er hvorfor at det er så svært for dig bare at lave et program som kører på computeren.
ok du siger at hvis jeg ikke benytter ISS så kan det lade sig gøre? Program som kører på computeren...? Hvilken computer? Det skal jo være en comp en kører hele tiden: web-serveren :)
repsak>> selvfølgelig kan det gøre kan det lade sig gøre hvis du ikke kører det igennem IIS (ikke ISS, det er en rumstation og et rengøringsfirma). Du skal bare lave et helt normalt program som du lægger i en mappe, og sørger for starter op hver gang computeren starter. Det program lytter så på connections, og hvad sådan et chat-program ellers skal kunne.
Jeg har ike besluttet om jeg dropper ideen eller hvad. Jeg fandt ikke udfordring i at lave et chatsystem - det har jeg lavet før, men jeg ville have det online, og det lader til at det ikke er så let da jeg VIL benytte asp.net og dermed IIS. Jeg synes at du skal have points da du har brugt tid på at løse problemet samt fortalt at det ikke umiddelbart kan lade sig gøre med IIS. Man skal jo ikke KUN give points når problemet er løst - også hvis problemet ikke kan løses med den ønskede teknologi :)
det har du helt ret i ;) problemet med IIS er jo at det bygger på requests. Dvs at når requester en side og iis har "afleveret" den til dig, så glemmer den alt om dig. Vi siger at den er stateless (ligesom andre webservere), og det kan godt være lidt upraktisk med en chatserver. F.eks. kan IIS ikke sende noget data til dig, efter at du har fået din side og afbrudt forbindelsen igen.
Nej enig :-). Men efter hvad jeg har hørt så er IIS en ret anvendt server... Så nedtur. Ved du hvilken teknologi jeg skal benytte hvis jeg skal ha den chat op at køre?
repsak>> hvilket som helst programmeringsprog der kan arbejde med sockets kan bruges. Jeg har et lille meget meget meget simpelt et lavet i vb6, som ikke er andet end et program der lytter på en port, og når der kommer noget data smækker den det op på skærmen :)
hej cyberfessor. er det muligt at jeg måtte se koden eller få det sendt pr. email for det program du har lavet i vb6 som står og lytter på data? hvordan kalder man så op til dit program? er det via ip adr./socket nr.? måske du vil vise/sende noget kode for det også? tak.
det er pænt af dig, tak. min email er lisby@rlisby.dk.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.