/ / Sails.io.js io.socket.get ('/ user', ...) Nie zaimplementowane jeszcze w rdzeniu - node.js, socket.io, sails.js, sails.io.js

Sails.io.js io.socket.get ('/ user', ...) Nie zaimplementowano jeszcze w rdzeniu - node.js, socket.io, sails.js, sails.io.js

Utwórz np. assets/js/dependencies/app.io.js z:

io.socket.on("connect", function socketConnected() {
console.debug("This is from the connect: ", io.socket);
console.debug("WebSocket is connected:", io.socket.isConnected());

io.socket.get("/user", function(resData) {
console.debug(resData);
});
});

Konsola

  |>    Now connected to Sails.
___/   For help, see: ....
(using sails.io.js browser SDK @v0.13.7)

app.io.js:3 This is from the connect:  SailsSocket {headers: undefined, eventQueue: Object, isConnecting: false, extraHeaders: Object, hostname: "localhost"…}
app.io.js:4 WebSocket is connected: true
app.io.js:7 Not implemented in core yet    <========= WHY?

UWAGA: io-socket-pobierz dokumentację

Dlaczego otrzymuję tę wiadomość?

Jakieś wskazówki, jak to naprawić?

Odpowiedzi:

2 dla odpowiedzi № 1

potrzebujemy więcej informacji, takich jak:

  1. używasz frameworków js takich jak Angular?
  2. czy zarządzasz swoimi zależnościami za pomocą takich narzędzi jak Bower?
  3. Jak skonfigurowany jest serwer Sails?

Przede wszystkim mogę pokazać, jak skonfigurowałem swój backend Sails:

w moim .sailsrc Mam haki skonfigurowane w następujący sposób

"hooks": {
"csrf": false,
"grunt": false,
"i18n": false,
"pubsub": false,
"session": false,
"sockets": true,
"views": false}

następnie w moim UserController.js Mam tę prostą metodę, która umożliwia komunikację z gniazdem

enableNtofications: function(req, res){

// checking if the request comes from
// a socket request
if(req.isSocket){

// getting the current logged user
var user = req.user;

// subuscribing the client to model changes
User.subscribe(req, [user.id]);

return res.ok();

} else {
return res.badRequest();
}

},

moja nakładka używa Angular i a ngSails moduł, który jest rodzajem opakowania "sails.io" dla Angular

iw moim "UserService.js" mogę zrobić coś takiego

        // waiting for notifications on User
$sails.on("user", function(event) {
if (event) {
// manage the message here...
}
});

a następnie wywołaj metodę serwera, aby włączyć gniazda

        // calling the service
return $sails.post("/user/enableNtofications").then(
// ok
function() {},
// ko
function(data) {
console.log("enable notifications KO");
console.log(data.error);
});

(musisz również wstrzyknąć moduł "$ sails" i odpowiednio go skonfigurować ...)

Mam nadzieję, że to może ci pomóc