DSAPI多功能組件編程應用-HTTP監聽服務端與客戶端_指令版

前面介紹了DSAPI多功能組件編程應用-HTTP監聽服務端與客戶端的內容,這裏介紹一個適用於更高效更快速的基於HTTP監聽的服務端、客戶端。編程

在本篇,你將見到史無前例的超簡化超傻瓜式的HTTP監聽服務,與前篇中的不一樣,在DSAPI中,指令版同時包含了服務端與客戶端。數組

先來看一下使用方法,幾乎不須要太多的說明,固然,它是支持事件的。所謂指令版,即服務端和客戶端收發都是基於短字串的,好比客戶端發一個「hello「,服務端收到這個指令後返回一個」Hi"。爲確保傳輸的數據有效性,默認使用Base64加密後傳輸,且該屬性在指令版中隱藏,由於用戶用不到這個屬性。網絡

創建一個指令版Http監聽加密

 

Private WithEvents 服務端 As New DSAPI.網絡相關.HTTP監聽_指令版
   With 服務端
            .綁定端口 = 2000 '綁定端口
            .參數前導符 = True  '是否使用參數前導符,意義和前篇同樣
            .容許外網鏈接 = True '是否容許外網請求
            .啓動監聽()
        End With


僅僅幾句代碼,就完成了一個基於HTTP監聽的指令版服務端,支持的事件以下:.net

 

Private Sub 服務端_監聽已啓動() Handles 服務端.監聽已啓動

    End Sub

    Private Sub 服務端_監聽已中止() Handles 服務端.監聽已中止

    End Sub

    Private Sub 服務端_收到指令(客戶端 As DSAPI.網絡相關.HTTP監聽_指令版.監聽客戶端_指令版, 指令內容 As String) Handles 服務端.收到指令

    End Sub

    Private Sub 服務端_遇到錯誤(錯誤 As Exception) Handles 服務端.遇到錯誤

    End Sub


處理接收到的指令code

 

Private Sub 服務端_收到指令(客戶端 As DSAPI.網絡相關.HTTP監聽_指令版.監聽客戶端_指令版, 指令內容 As String) Handles 服務端.收到指令
        Select Case 指令內容
            Case "hello"
                服務端.寫入信息到指定客戶端輸出流(客戶端, "hello,my friend")
            Case "get"
                服務端.寫入信息到指定客戶端輸出流(客戶端, IO.File.ReadAllBytes("c:\1.rar"))
            Case Else
                服務端.寫入信息到指定客戶端輸出流(客戶端, "No")
        End Select
    End Sub


發來的指令內容直接在參數中提供,以便select case,一樣,返回給客戶端的,能夠是文本,也能夠是字節數組,好比一個文件。blog

服務端的創建和使用就是上面這些,下面演示如何創建一個指令版客戶端。事件

 

建議一個指令版Http監聽客戶端ci

 

Private WithEvents 客戶端 As New DSAPI.網絡相關.HTTP監聽_指令版.監聽客戶端_指令版

  With 客戶端
            .超時時間 = 1000 '自定義超時時間
            .服務端IP或域名 = "127.0.0.1"
            .服務端端口號 = 2000
        End With


就這麼簡單,好了,如今看一下如何使用客戶端向服務端發送一個指令並獲取返回數據。get

 

 

MsgBox(客戶端.獲取數據("hello"))

一句代碼,什麼?就這樣?是的,你沒看錯,就這麼簡單。這就是我所謂的指令版,相信你必定喜歡。

相關文章
相關標籤/搜索