Düğüm öğrenmeye yeni başladım ve internetten küçük parçalar ve parçalar birleştirdim. Düğümü kullanmak istediğim bir şey, istemciden e-posta göndermek için SendGrid'tir. Bunu, socket.io istemci tarafında socket = io.connect(http://localhost:8080);
(herkesin yapması gerektiği gibi) manuel olarak girerek çalıştım. Bu, yerel olarak gayet iyi çalıştı, ben de buna kahramanlar ya da benzer bir hizmete ev sahipliği yapmaya gittim. Ben sunucu için html görüntülemek için adresine http://localhost:5000 gidinSoket IO doğru sunucuya bağlanmaz.
var express = require('express');
var app = express();
var server = require('http').createServer(app);
var io = require('socket.io')(server);
// This is the socket.io port. I want the client to go through this.
server.listen(8080);
// this is used to serve a static html page in the public folder.
// I feel like the way I have this set up is part of the issue
app.set('port', (5000));
app.use(express.static(__dirname + '/public'));
app.listen(app.get('port'), function() {
console.log('Node app is running on port ' + app.get('port'));
});
: Burada
Aşağıdaki kod fonksiyonları onlar sadece sendgrid maddeleri çalışan olarak önemi yok (neye benzediğini benim sunucusudur .
// Init the socket
socket = io.connect('http://localhost');
// send stuff through it. this stuff doesnt matter. but it sends values
// Via json to the server to then use in an email.
socket.emit('sendCompile', {adr: receptients, bod: body });
: Burada yazdım istemci kodudur socket.io-1.4.5.js:1 GET
http://localhost/socket.io/?
EIO=3&transport=polling&t=LFC_cxO
Herhangi bir yardım mutluluk duyacağız: 210
Bu bana hata veriyor. (5 saatten fazla bir süredir bunun üzerinde çalışıyorum: D)
PS: Zaten herkesin yapmayı düşündüğü gibi socket = io();
ve socket = io.connect();
'u değiştirmeyi denedim. ama bunların hiçbiri işe yaramıyor. Sunucuyu nasıl yazdığımla ilgili bir sorun gibi hissediyorum, onları bulduğum gibi bir araya getirdiğim gibi.
socket = io.connect('http://localhost');
socket = io.connect('http://mywebsite.com:8080');
Ayrıca liman Eğer soket için kullandığınız dikkat haline gelmelidir:
onun heroku ortamında zaten 8080 dinleyen başka bir hizmet var, e-postalarınızı yönlendirilmemesine neden oluyor – Alex