[英]How to format UDP packet in Java?
我需要使用UDP將一些數據發送到IP地址。 我不知道如何格式化我的字符串。 我需要發送多個數據包嗎?
在開發人員頁面上,我僅獲得以下信息:
我應該做些什么? 在右側部分,這是我需要發送的字符串。
誰能解釋什么是“挑戰”?
從開發者站點:
初始化游戲服務器后不久,它將選擇兩個主服務器“加入”。 為了使客戶端在單擊“ Internet”選項卡時看到特定的游戲服務器,游戲服務器必須出現在Steam主服務器記錄中。 游戲服務器向每個主服務器發送“ q”(71)。 每個主服務器通過發送FF FF FF FF 73 0A響應,后跟一個(相對)唯一的4字節“挑戰”號。 如果向主服務器發送無效的質詢,您將收到另一個質詢作為響應。
這是什么意思?
FF FF FF FF 73 0A
正如我在評論中所寫,您需要發送字節,而不是字符串。 因此,您必須找出服務器是否以ascii編碼或其他方式工作,然后以正確的編碼獲取字符串的字節。
當文檔討論“發送FF 73 ...”時,表示發送字節。 它是一個以16為底的數字(=“ Hexadecimal”)。 像這樣創建一個字節“ FF”:
byte b = 0xFF; // Hex for 255
當文檔討論發送“ q(71)”時,意味着發送一個字節(0x71),該字節以ascii編碼字母“ q”。
關於“挑戰”,請閱讀Wikipedia,並更深入地咨詢開發人員文檔。 我相信他們會在這個問題上說更多。
在Java中使用UDP時,您可以查閱oracle的許多示例和教程 。
希望對您有幫助。 祝好運。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.