Skip to content

Instantly share code, notes, and snippets.

@lpinca
Last active August 29, 2015 13:56
Show Gist options
  • Save lpinca/9236543 to your computer and use it in GitHub Desktop.
Save lpinca/9236543 to your computer and use it in GitHub Desktop.
Primus secure WebSocket
-----BEGIN CERTIFICATE-----
MIICATCCAWoCCQDuPBBeAphl0zANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJB
VTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lkZ2l0
cyBQdHkgTHRkMB4XDTE0MDIyNjE5MTg0OVoXDTE0MDMyODE5MTg0OVowRTELMAkG
A1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNVBAoTGEludGVybmV0
IFdpZGdpdHMgUHR5IEx0ZDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA68hH
8JNVn7mGxtSRl+GI+jw12t5kX7+ML42pHteynBki1FmNnYAgUekQ8EnGCwXyUOaD
YxglhAv6Yu0tggE1hcJNbDh4a6N2B02fUcIwEHPGWJNVEB8L92mfDc0tS00a5Drp
yv3T965R0HF7GNlF1MU3Y3V6rk0WNWv1sECVCQkCAwEAATANBgkqhkiG9w0BAQUF
AAOBgQDOUWndwR84vPQKgyYEjK/wspVQ7Rp7qV6VYezTLGJJYhdOgH6xqoGzcj/5
p2Ni/0u423ynuIB2lEDeiSVfJXThPkkzpG1ornjK5kxtrFK2iO2vzIL+Vh7nqZD8
SVFUOKLQRSMw3CFw5UpBhk2tqa9ycCrN5ZUKilizry6RyZgVbQ==
-----END CERTIFICATE-----
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<script src="/primus/primus.js"></script>
<script>
var primus = Primus.connect('https://localhost:3000');
</script>
</body>
</html>
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQDryEfwk1WfuYbG1JGX4Yj6PDXa3mRfv4wvjake17KcGSLUWY2d
gCBR6RDwScYLBfJQ5oNjGCWEC/pi7S2CATWFwk1sOHhro3YHTZ9RwjAQc8ZYk1UQ
Hwv3aZ8NzS1LTRrkOunK/dP3rlHQcXsY2UXUxTdjdXquTRY1a/WwQJUJCQIDAQAB
AoGAM0N7aLIP9sdWp1pGQXh22LlImEqsFilGaHxrXdpV6hyI9xR1dt4JqOV8mlHf
7jufwLktrdjtJzWXffTFZTOwF/cMUq0FaC8pvRCb5tnmlUZ2B2OlbwBMEMpgste3
MvxrBITloHkmC6xNRi1Lk3vnAmC83oA5naDvVd/3GoBHL+UCQQD+x3inOUxxIQ9n
v73iKpHx14IIJGKfoB/f4QEGl9s7PxYMKD1+f5gYaGdKs/9rlzd+6tyUakv8tkkr
KnxeextrAkEA7OmByAq6k2ePKrhnMl7fapJMB8VRdj1FpQ9lkze7SHUvCjE5S0EZ
UEs1wgu77IOwKV5z7FOiUUqnglWyDYNeWwJAGsETmGvZ7R9NoNVvuSpDPSQmUXiQ
qraD4lycYPbdXLFZPVmUa442iImeHygbsE6m0zsSgrtO03DI6jGB8eH3lQJBAKLJ
sIusE5fFyPIp038hAZNRAz0zsE32vCw28CzAVsfq/W+bcyrqiGJLy5ySQ4a41gsX
A8CXlykUixVbnQT8B5ECQG+NA7uWK5tYBQuLf9sPPmIYfkHgVdoOFSCID9MNZohL
J34mQiO0XqeSEIVKc3f0Ob1Mw+4hPNQIvyhmick84+M=
-----END RSA PRIVATE KEY-----
'use strict';
var fs = require('fs')
, https = require('https')
, Primus = require('primus')
, primus;
var options = {
key: fs.readFileSync(__dirname + '/key.pem'),
cert: fs.readFileSync(__dirname + '/cert.pem')
};
var server = https.createServer(options, function(req, res) {
res.setHeader('Content-Type', 'text/html');
fs.createReadStream(__dirname + '/index.html').pipe(res);
});
primus = new Primus(server, {transformer: 'websockets'});
primus.on('connection', function(spark) {
console.log(spark.id + ' connected');
});
server.listen(3000);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment