Popularity
4.5
Growing
Activity
0.0
Stable
22
3
0
Programming language: Crystal
License: MIT License
Tags:
HTTP
Latest version: v0.8.0
sse.cr alternatives and similar shards
Based on the "HTTP" category.
Alternatively, view sse.cr alternatives based on common mentions on social networks and blogs.
-
http-protection
This library protects against typical web attacks. It was inspired in rack-protection Ruby gem. -
multipart.cr
DISCONTINUED. Adds multipart and multipart/form-data support to the crystal standard library -
ContentDisposition
Crystal shard to create HTTP Content-Disposition headers with proper escaping/encoding of filenames
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
Promo
www.saashub.com
Do you think we are missing an alternative of sse.cr or a related project?
README
Server-Sent Events
Server-Sent Events server/client for Crystal.
Installation
- Add the dependency to your
shard.yml
:
dependencies:
sse:
github: y2k2mt/sse.cr
- Run
shards install
Usage
Client
require "sse"
sse = HTTP::ServerSentEvents::EventSource.new("http://127.0.0.1:8080")
sse.on_message do |message|
# Receiving messages from server
p message.data
end
sse.run
Server
require "sse"
server = HTTP::Server.new [
HTTP::ServerSentEvents::Handler.new { |es, _|
es.source {
# Delivering event data every 1 second.
sleep 1
HTTP::ServerSentEvents::EventMessage.new(
data: ["foo", "bar"],
)
}
},
]
server.bind_tcp "127.0.0.1", 8080
server.listen
Running server and you can get then:
$ curl 127.0.0.1:8080 -H "Accept: text/event-stream"
data: foo
data: bar
data: foo
data: bar
...
Contributing
- Fork it (https://github.com/y2k2mt/sse.cr/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- y2k2mt - creator and maintainer