利用C# Socket通訊創建本地計算機與騰訊雲服務器的鏈接

    如今只是學了一點C#的皮毛,因此接觸的較多的是用visual studio創建的控制檯應用程序,所以,採用的是在vs平臺下的控制檯項目編寫的C#socket通訊代碼。linux

    首先要明白,雲服務器,不是多麼難懂的東西,它本質上就是一臺放在遠處,而且一直在運行的計算機。Socket通訊既然能夠實現兩臺(甚至是多臺)計算機之間的通訊,那麼固然也能夠實現本地計算機與雲服務器的鏈接。這裏,我是用的是騰訊雲提供的1元學生惠的windows系統的雲服務器,由於對於windows系統比較熟悉,因此採用的是windows系統。  其實,我也一直在想,是否是應該學習一下linux系統,看了看,實在是不知從何下手,若是有時間,真的想學一下linux。windows

    socket通訊的代碼,網上有不少,能夠直接借鑑過來,只要懂一點程序,看懂代碼應該不難。重要的是要把代碼粘貼或者手敲到控制檯中,這樣能夠經過實際運行,一步步調試看懂代碼的具體含義,注意,在運行代碼時,要先運行服務器端代碼,再啓動客戶端代碼,順序不能顛倒。運行服務器端代碼,socket套接字會監聽服務器端的某端口(端口號本身設定),等待客戶端的鏈接,創建鏈接後,再經過send() receive()方法進行客戶端與服務器端的數據傳送,服務器、客戶端均可以收發數據。通常來講,都是經過字節數組的形式進行接收數據,這裏就又要求解碼與編碼了。我用的是在服務器端先將數據轉換爲string類型,再轉換爲byte數組,發送到客戶端,客戶端接收字節數組後,再解碼成string類型,這樣不會出現格式錯誤、不能正常顯示的問題。數組

    在學習代碼時,我很迷惑的是,爲何查到的全部代碼中,寫的地址都是127.0.0.1,我明白socket通訊中,地址必須寫服務器端地址,這樣客戶端才知道是要鏈接哪一個服務器。後來明白,127.0.0.1是表明系統的回送地址,也就是用於在本機測試,編寫的Socket通訊代碼是否能成功鏈接並進行數據傳送,測試成功後,能夠把服務器端應用程序(.exe文件 可在projects中找到)放到你想放的服務器中,可是注意地址不能再寫127.0.0.1 而是要寫成你服務器端的ip地址,雲服務器的ip地址,就是你購買雲服務器後告訴你的公網ip,例如,個人是139.199.22.***  而後按以前的順序,先運行服務器端代碼,再運行客戶端代碼。服務器

    (在Visual Studio中,如何同時運行兩個或多個項目?  運行一個以後,在另外一個想要運行的項目右擊項目名--->啓動新實例)
相關文章
相關標籤/搜索