該庫提供 API,用於向/從另一個應用程式進程(本地或遠端)發送/接收訊息,以實現無連接協定。
當可選的localHost
欄位沒有給予本機主機位址或 IP 位址時,預設綁定localhost
位址。用於連接遠端伺服器的本機連接埠的連接埠號碼是隨機決定的(臨時連接埠)。
udp:Client
用於與遠端UDP主機交互,可以定義如下:
udp : Client socketClient = check new ;
udp : Datagram datagram = {
remoteHost : " localhost " ,
remotePort : 48829 ,
data : " Hello Ballerina " . toBytes ()
};
check socketClient -> sendDatagram ( datagram );
readonly & udp : Datagram result = check socketClient -> receiveDatagram ();
check socketClient -> close ();
udp:ConnectClient
透過提供remoteHost
和remotePort
進行配置,以便它僅從配置的遠端主機接收資料並向其發送資料。連線後,可能無法從任何其他主機接收資料或向任何其他主機發送資料。客戶端保持連線狀態,直到明確關閉為止。如果給writeBytes
方法的位元組數大於資料報允許的資料大小,它將透過多個資料報迭代發送所有位元組。
udp : ConnectClient socketClient = check new ( " localhost " , 48829 );
string msg = " Hello Ballerina " ;
check socketClient -> writeBytes ( msg . toBytes ());
readonly & byte [] result = check socketClient -> readBytes ();
check socketClient -> close ();
udp:Listener
用來監聽傳入的套接字請求。
udp:Listener
可以有以下方法。
onBytes(readonly & byte[] data, udp:Caller caller)
或onDatagram(readonly & udp:Datagram, udp:Caller)
:一旦從客戶端收到內容,就會呼叫這些遠端方法。客戶端使用udp:Caller
表示。
onError(readonly & udp:Error err)
:在錯誤情況下呼叫此遠端方法。
udp:Listener
可以定義如下:
service on new udp:Listener( 48829 ) {
remote function onDatagram( readonly & udp : Datagram datagram )
returns udp : Datagram | udp : Error ? {
// Handle the content received from the client
}
remote function onError( udp : Error err ) {
// Handle the error situation
}
}
該儲存庫的「問題」和「項目」標籤已停用,因為它是 Ballerina 標準庫的一部分。若要回報錯誤、請求新功能、開始新討論、查看專案板等,請造訪 Ballerina 標準庫父儲存庫。
該存儲庫僅包含該包的源代碼。
下載並安裝 Java SE 開發工具包 (JDK) 版本 21(從下列位置之一)。
甲骨文
OpenJDK
注意:將 JAVA_HOME 環境變數設定為安裝 JDK 的目錄的路徑名。
執行以下命令從來源建置。
建置包:
./gradlew clean build
運行測試:
./gradlew clean test
執行一組測試
./gradlew clean test -Pgroups=<test_group_names>
要建置而不進行測試:
./gradlew clean build -x test
調試包的實作:
./gradlew clean build -Pdebug=<port>
使用 Ballerina 語言進行調試:
./gradlew clean build -PbalJavaDebug=<port>
將產生的工件發佈到本機 Ballerina 中央儲存庫:
./gradlew clean build -PpublishToLocalCentral=true
將產生的工件發佈到 Ballerina 中央儲存庫:
./gradlew clean build -PpublishToCentral=true
作為一個開源項目,Ballerina 歡迎社區的貢獻。
有關更多信息,請參閱貢獻指南。
我們鼓勵所有貢獻者閱讀《芭蕾舞女演員行為準則》。
udp
庫。