anysocket
v0.4.29
เลเยอร์เครือข่ายเชิงนามธรรมบนการขนส่งหลายรูปแบบ ไคลเอ็นต์/เซิร์ฟเวอร์ไม่เชื่อเรื่องพระเจ้าพร้อมรองรับ E2EE
นี่เป็นงานระหว่างดำเนินการและ API อาจมีการเปลี่ยนแปลงได้
AnySocket.Packer
)/dist/anysocket.browser.js
)** การขนส่ง http อยู่ระหว่างการทดลอง
ข้อมูล: อาร์กิวเมนต์และการตอบกลับ RPC แบบไบนารีจะถูกแพ็ก/แตกแพ็กอัตโนมัติ ( AnySocket.Packer.pack
/ AnySocket.Packer.unpack
)
ดูเกณฑ์มาตรฐาน
npm install -- save anysocket
หรือ
< script src =" /dist/anysocket.browser.js " > </ script >
หรือ (หากใช้ AnySocketHTTP)
< script src =" @anysocket " > </ script >
ตัวอย่างต่อไปนี้เริ่มต้นเซิร์ฟเวอร์ websocket บนพอร์ต 3000
const AnySocket = require ( "anysocket" ) ;
const server = new AnySocket ( ) ;
const PORT = 3000 ;
server . listen ( "ws" , PORT )
. then ( ( ) => {
console . log ( "Listening on port:" , PORT ) ;
} )
. catch ( ( err ) => {
console . error ( "Failed to start server:" , err ) ;
} ) ;
server . on ( "connected" , async ( peer ) => {
console . log ( "Connected" , peer . id ) ;
console . log ( await peer . getSyncedTime ( ) ) // { time: 1674671482107, rtt: 2, offset: 0 }
peer . send ( {
hello : "world"
} ) ;
} ) ;
server . on ( "message" , ( packet ) => {
console . log ( "From:" , packet . peer . id , "Message:" , packet . msg ) ;
} ) ;
server . on ( "disconnected" , ( peer , reason ) => {
console . log ( "Disconnected" , peer . id , "Reason:" , reason ) ;
} ) ;
ตัวอย่างต่อไปนี้เชื่อมต่อกับ websocket บนพอร์ต 3000
const AnySocket = require ( "anysocket" ) ;
const client = new AnySocket ( ) ;
const PORT = 3000 ;
client . connect ( "ws" , "127.0.0.1" , PORT )
. then ( ( ) => {
console . log ( "Connected to server" ) ;
} )
. catch ( ( err ) => {
console . error ( "Failed to connect to server:" , err ) ;
} ) ;
// after negotiating the AUTH packet, it will trigger the connect event
client . on ( "connected" , async ( peer ) => {
console . log ( "Connected" , peer . id ) ;
console . log ( await peer . getSyncedTime ( ) ) // { time: 1674671482107, rtt: 2, offset: 0 }
peer . send ( {
hello : "world"
} ) ;
} ) ;
client . on ( "message" , ( packet ) => {
console . log ( "From:" , packet . peer . id , "Message:" , packet . msg ) ;
} ) ;
client . on ( "disconnected" , ( peer , reason ) => {
console . log ( "Disconnected" , peer . id , "Reason:" , reason ) ;
} ) ;
เพิ่มเติมในโฟลเดอร์ examples
ดูเอกสารประกอบและโฟลเดอร์ตัวอย่าง
* สิ่งนี้จะต้องมีการเปลี่ยนแปลงในโปรโตคอล เนื่องจากโปรโตคอลถือว่าแพ็กเก็ตถูกส่งโดยใช้การเชื่อมต่อที่เชื่อถือได้และได้รับคำสั่ง
เอ็มไอที