mirror of
https://github.com/kataras/iris.git
synced 2025-12-18 10:27:06 +00:00
Update to 8.3.0 | MVC Models and Bindings and fix of #723 , read HISTORY.md
Former-commit-id: d8f66d8d370c583a288333df2a14c6ee2dc56466
This commit is contained in:
44
_examples/websocket/third-party-socketio/main.go
Normal file
44
_examples/websocket/third-party-socketio/main.go
Normal file
@@ -0,0 +1,44 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"github.com/kataras/iris"
|
||||
|
||||
"github.com/googollee/go-socket.io"
|
||||
)
|
||||
|
||||
/*
|
||||
go get -u github.com/googollee/go-socket.io
|
||||
*/
|
||||
|
||||
func main() {
|
||||
app := iris.New()
|
||||
server, err := socketio.NewServer(nil)
|
||||
if err != nil {
|
||||
app.Logger().Fatal(err)
|
||||
}
|
||||
|
||||
server.On("connection", func(so socketio.Socket) {
|
||||
app.Logger().Infof("on connection")
|
||||
so.Join("chat")
|
||||
so.On("chat message", func(msg string) {
|
||||
app.Logger().Infof("emit: %v", so.Emit("chat message", msg))
|
||||
so.BroadcastTo("chat", "chat message", msg)
|
||||
})
|
||||
so.On("disconnection", func() {
|
||||
app.Logger().Infof("on disconnect")
|
||||
})
|
||||
})
|
||||
|
||||
server.On("error", func(so socketio.Socket, err error) {
|
||||
app.Logger().Errorf("error: %v", err)
|
||||
})
|
||||
|
||||
// serve the socket.io endpoint.
|
||||
app.Any("/socket.io/{p:path}", iris.FromStd(server))
|
||||
|
||||
// serve the index.html and the javascript libraries at
|
||||
// http://localhost:8080
|
||||
app.StaticWeb("/", "./public")
|
||||
|
||||
app.Run(iris.Addr("localhost:8080"))
|
||||
}
|
||||
38
_examples/websocket/third-party-socketio/public/index.html
Normal file
38
_examples/websocket/third-party-socketio/public/index.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Socket.IO chat</title>
|
||||
<style>
|
||||
* { margin: 0; padding: 0; box-sizing: border-box; }
|
||||
body { font: 13px Helvetica, Arial; }
|
||||
form { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }
|
||||
form input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }
|
||||
form button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }
|
||||
#messages { list-style-type: none; margin: 0; padding: 0; }
|
||||
#messages li { padding: 5px 10px; }
|
||||
#messages li:nth-child(odd) { background: #eee; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<ul id="messages"></ul>
|
||||
<form action="">
|
||||
<input id="m" autocomplete="off" /><button>Send</button>
|
||||
</form>
|
||||
<script src="/socket.io-1.3.7.js"></script>
|
||||
<script src="/jquery-1.11.1.js"></script>
|
||||
<script>
|
||||
var socket = io();
|
||||
$('form').submit(function(){
|
||||
socket.emit('chat message with ack', $('#m').val(), function(data){
|
||||
$('#messages').append($('<li>').text('ACK CALLBACK: ' + data));
|
||||
});
|
||||
socket.emit('chat message', $('#m').val());
|
||||
$('#m').val('');
|
||||
return false;
|
||||
});
|
||||
socket.on('chat message', function(msg){
|
||||
$('#messages').append($('<li>').text(msg));
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
10309
_examples/websocket/third-party-socketio/public/jquery-1.11.1.js
vendored
Normal file
10309
_examples/websocket/third-party-socketio/public/jquery-1.11.1.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user