Socket API 1ක පහත methods ටික ලබා දෙනවා.
SOCKET method 1න් කරන්නේ අලුත් instanse 1ක් හදාගන්න 1ක.
SEND , RECEIVE method data යවන්න හා ලබාගන්න බාවිතා කරනවා.
CONNECT method 1ක මගින් client application 1ක server application 1ත් සමග connection 1ක හදාගන්නවා.
BIND method 1න් server application 1ක IP:PORT 1ක් ලබාදෙනවා. server application 1කේ IP:PORT දන්නා ඕනෑම කෙනෙකුට server 1ට data එවන්න පුළුවන්.
LISTEN මගින් server 1ක සම්බන්දතා ඇති කරගන්න කැමති ප්රමාණය කියනවා. ACCEPT මගින් server application 1ක හා client application 1ක අතර connection 1ක් හදාගන්නවා.
සරල client server application 1ක් වැඩකරන හැටි දැන් බලමු.
soc = socket.socket() මගින් අලුත් socket instanse 1ක් හැදෙනවා. මේ soc 1ක TCP වර්ගයට අයත් socket instanse 1ක්.soc.bind(address) මගින් server 1ට IP:PORT 1ක් ලබාදෙනවා.මෙහි address 1ක HOST/IP ,PORT tuple 1ක් විදියට දෙන්න ඕනි. HOST 1ට empty string 1ක් දුන්නම ඕනෑම IP 1න් එන request බාරගන්නවා.
soc.listen(1) මගින් client application 1ට පමණක් ඇහුන්කන් දෙනවා. soc.accept() මගින් server application 1ක client application 1ත් සමග connection 1ක් හදාගන්නවා. ඒ connection 1ක පිළිබද සියලුම විස්තර remort_soc variable 1ට assign වෙනවා. client application 1ට data යැවීමට හා ලබාගැනීමට remort_soc උපකාරී වෙනවා. පහත රුපයේ විදියට remort_soc.recv හා remort_soc.send while loop 1ක් ඇතුලත තියෙන්න ඕනි. මොකද client application 1ක, 1ක් වතාවකට වැඩියෙන් server 1ට data එවන නිසා. මේ උදහරනයේදී client application 1න් එවන string capital letters වලට හරවල එම string 1ම client application 1ට යවනවා. අවසානයේදී open කරපු socket 1ක close කරන්න ඕනි.
Client application 1ක සලකනකොට අලුත් socket instanse 1ක් හදාගන්න ඕනි. soc.connect((HOST,PORT)) මගින් client application 1ක server 1ට connect කරන්න ඕනි. soc.send හා soc.recv මගින් server 1ට data යවන්න හා ලබාගන්න පුළුවන්. මෙහි input මගින් user න් input ලබාගන්නවා, මේ ලගන්න input තම server 1ට යවන්නේ. String, Images හෝ වෙනත් ඕනෑම දෙයක් server න් client ට හෝ අනෙත් දිශාවට යැවීමට පෙර byte වලට හැරවිය යුතුයි.
Application 2ක වැඩකරන විට පහත විදියට බලාගන්න පුළුවන්.
දැන් server application 1කේ send data string 1ක මේ විදියට edit කරන්න,
HTTP/1.1 200 OK\nContent-Length: 32\ncontent-type:text/html; charset=UTF-8\n\n<html><body> My first Server test</body></html>. Server 1ක run කරලා ඔයාලගේ browser 1කේ url 1ක localhost:9998 විදියට type කරලා මොකද වෙන්නේ බලන්නකෝ. ඉතිරි ටික ඊලග ලිපියෙන් ඔයාලට ගේන්නම්.









No comments:
Post a Comment