WebSockets สำหรับ Node.js และ JavaScript/TypeScript พร้อมรองรับ JSON RPC 2.0 ที่ด้านบน
ไลบรารี rpc-websockets ช่วยให้นักพัฒนาสามารถนำตรรกะทางธุรกิจไปใช้ได้อย่างง่ายดาย ซึ่งรวมถึงการรับส่งข้อความระหว่างผู้ใช้ เครื่องจักร หรืออุปกรณ์ใดๆ ให้ความเป็นไปได้ในการส่งและรับข้อมูล JSON ผ่านโปรโตคอลการสื่อสาร WebSocket เพื่อรองรับการแจ้งเตือนแบบสองทาง การเรียกใช้วิธี RPC และส่งสัญญาณเหตุการณ์ทุกประเภท มีเพียงลูกค้าเท่านั้นที่สามารถเรียกใช้วิธี RPC ได้ และขณะนี้ไม่สามารถเรียกวิธี RPC ได้ รองรับสภาพแวดล้อมการพัฒนาทั้งส่วนหน้า (แบบ HTML/JS) และส่วนหลัง (แบบ Node.js)
rpc-websockets สร้างขึ้นบน Node.js และรองรับทั้ง LTS และเวอร์ชันปัจจุบัน
ใช้ OSS รุ่นฟรีเพื่อใช้งานและจัดการอินสแตนซ์เซิร์ฟเวอร์ WebSocket ของคุณเอง หรือสมัครแผน Pro ของเรา และให้เราจัดการอินสแตนซ์ของคุณและมอบการจัดการวิธีการ กิจกรรม และการแจ้งเตือนให้กับคุณในการจัดการเว็บที่ใช้งานง่าย พอร์ทัล
ติดตั้งไลบรารี OSS ของเราในโครงการของคุณ:
npm install rpc-websockets
เขียนซอร์สโค้ดของคุณโดยใช้ rpc-websockets
:
var WebSocket = require ( 'rpc-websockets' ) . Client
var WebSocketServer = require ( 'rpc-websockets' ) . Server
// instantiate Server and start listening for requests
var server = new WebSocketServer ( {
port : 8080 ,
host : 'localhost'
} )
// register an RPC method
server . register ( 'sum' , function ( params ) {
return params [ 0 ] + params [ 1 ]
} )
// ...and maybe a protected one also
server . register ( 'account' , function ( ) {
return [ 'confi1' , 'confi2' ]
} ) . protected ( )
// create an event
server . event ( 'feedUpdated' )
// get events
console . log ( server . eventList ( ) )
// emit an event to subscribers
server . emit ( 'feedUpdated' )
// close the server
server . close ( )
// instantiate Client and connect to an RPC server
var ws = new WebSocket ( 'ws://localhost:8080' )
ws . on ( 'open' , function ( ) {
// call an RPC method with parameters
ws . call ( 'sum' , [ 5 , 3 ] ) . then ( function ( result ) {
require ( 'assert' ) . equal ( result , 8 )
} )
// send a notification to an RPC server
ws . notify ( 'openedNewsModule' )
// subscribe to receive an event
ws . subscribe ( 'feedUpdated' )
ws . on ( 'feedUpdated' , function ( ) {
updateLogic ( )
} )
// unsubscribe from an event
ws . unsubscribe ( 'feedUpdated' )
// login your client to be able to use protected methods
ws . login ( { 'username' : 'confi1' , 'password' : 'foobar' } ) . then ( function ( ) {
ws . call ( 'account' ) . then ( function ( result ) {
require ( 'assert' ) . equal ( result , [ 'confi1' , 'confi2' ] )
} )
} ) . catch ( function ( error ) {
console . log ( 'auth failed' )
} )
// close a websocket connection
ws . close ( )
} )
โปรดอ่านเอกสารประกอบ API ของเราสำหรับทั้งเซิร์ฟเวอร์ WebSocket และคลาส JavaScript และ TypeScript ของไคลเอ็นต์
คุณสมบัติของรุ่นโอเพ่นซอร์สฟรี
คุณลักษณะโอเพ่นซอร์สทั้งหมดของไลบรารีได้รับการบันทึกไว้ในเอกสาร API ของเราและสามารถใช้งานได้ฟรี คุณมีอิสระในการปรับใช้โซลูชันของคุณตามวิธีการที่ให้มาในแบบที่คุณพอใจ ตราบใดที่คุณใช้งานของเราตามเงื่อนไขสิทธิ์การใช้งานที่ได้รับอนุญาตของเรา
เพื่อที่จะสนับสนุนสภาพแวดล้อมที่พร้อมสำหรับการผลิตของคุณ เราสามารถมอบคุณสมบัติเพิ่มเติมที่สร้างจากรุ่น OSS ฟรีของเรา พร้อมกับชุดทักษะในการเปลี่ยนกรณีทางธุรกิจของคุณหรือแนวคิด Proof-of-Concept ให้กลายเป็นความจริง
อธิบายกรณีการใช้งานของคุณโดยติดต่อเรา แล้วเราจะติดต่อคุณกลับอย่างรวดเร็วพร้อมโซลูชันที่นำเสนอที่ตรงกับความต้องการของคุณ
เราให้การสนับสนุนอย่างมืออาชีพสำหรับ rpc-websockets และอื่นๆ เรามีความเชี่ยวชาญหลายปีในการสร้างแอปพลิเคชัน Node.js ที่แข็งแกร่งและปรับขนาดได้ และสามารถช่วยคุณเอาชนะปัญหาและความท้าทายที่ทำให้คุณไม่สามารถจัดส่งผลิตภัณฑ์ที่ยอดเยี่ยมของคุณได้ เราเป็นเลิศในด้านสถาปัตยกรรมซอฟต์แวร์และการใช้งาน โดยสามารถให้บริการด้านการพัฒนา การวางแผน การให้คำปรึกษา การฝึกอบรม และการปรับแต่งแก่คุณได้ โปรดติดต่อเราเพื่อให้เราสามารถหารือเกี่ยวกับวิธีช่วยคุณในการดำเนินการผลิตภัณฑ์ให้เสร็จสิ้น!
rpc-websockets ถูกใช้อย่างแข็งขันในการผลิตโดยบริษัทหลายแห่งในกรณีการใช้งานที่แตกต่างกัน
ร่วมเป็นผู้สนับสนุนและรับโลโก้ของคุณบน README ของโครงการบน GitHub พร้อมลิงก์ไปยังเว็บไซต์ของคุณ โปรดติดต่อเราเพื่อขอจัดเตรียม!
ห้องสมุดนี้ได้รับอนุญาตภายใต้ LGPLv3 โปรดดูใบอนุญาตสำหรับรายละเอียดใบอนุญาต