mirror of
				https://gitea.invidious.io/iv-org/shard-kemal.git
				synced 2024-08-15 00:53:36 +00:00 
			
		
		
		
	Add websocket doc
This commit is contained in:
		
							parent
							
								
									88c19f0051
								
							
						
					
					
						commit
						f258f28689
					
				
					 1 changed files with 35 additions and 0 deletions
				
			
		
							
								
								
									
										35
									
								
								docs/websockets.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								docs/websockets.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,35 @@ | |||
| # Using Websockets | ||||
| 
 | ||||
| Using Websockets is super easy! By nature Websockets are a bit different than standard Http Request/Response lifecycle. | ||||
| 
 | ||||
| You can easily create a websocket handler which matches the route of `ws://host:port/route. You can create more than 1 websocket handler | ||||
| with different routes. | ||||
| 
 | ||||
| ```ruby | ||||
|   ws "/" do |socket| | ||||
| 
 | ||||
|   end | ||||
| 
 | ||||
|   ws "/route2" do |socket| | ||||
| 
 | ||||
|   end | ||||
| ``` | ||||
| 
 | ||||
| Let's access the socket and create a simple echo server. | ||||
| 
 | ||||
| ```ruby | ||||
|   ws "/" do |socket| | ||||
|     # Send welcome message to the client | ||||
|     socket.send "Hello from Kemal!" | ||||
| 
 | ||||
|     # Handle incoming message and echo back to the client | ||||
|     socket.on_message do |message| | ||||
|       socket.send "Echo back from server #{message}" | ||||
|     end | ||||
| 
 | ||||
|     # Executes when the client is disconnected. You can do the cleaning up here. | ||||
|     socket.on_close do | ||||
|       puts "Closing socket" | ||||
|     end | ||||
|   end | ||||
| ``` | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue