Socket.io - Nie można załadować pliku
Zrobiłem aplikację do czatu internetowego za pomocą Node.js, socket.io i express. Działa dobrze.
Teraz chcę przenieść moją aplikację do czatu na moją stronę, ale mam problem ze ścieżkami.
Moja strona internetowa jest oparta naRamy Laravel i ma tę strukturę.
Website
/public
/js
/jquery1-10.js
/chat.js ----> client side chat file.
/app.js ----> node.js server side file.
/index.php
Laravel używa układów w taki sposóbindex.php
plik,URL::asset('/path-to-file')
działa dobrze dla wszystkich plików w katalogu publicznym. w tym arkusze stylów i javascript.
W moimindex.php
plik Wywoływam javascripts w ten sposób:
<script src="{{ asset('js/jquery1-10.js'); }}" ></script> // public/js/jquery1-10.js
<script src="{{ asset('js/chat.js'); }}" ></script> // public/js/chat.js
<script src="{{ asset('/socket.io/socket.io.js'); }}" ></script> // ???
obiejquery1-10.js
ichat.js
ładuje się dobrze
ALE nie można załadować pliku socket.io. Myślę, że socket.io tworzy automatycznie! i nie mam pojęcia, gdzie to jest.
Czy ktoś może mi z tym pomóc?
to jestapp.js
plik:
var http = require("http");
var express = require("express"),
app = express(),
server = http.createServer(app),
io = require("socket.io").listen(server);
server.listen(4000);
app.get("/*", function( req, res ) {
res.sendfile( __dirname + "/index.php" );
});
A to jest mój plik chat.js -> po stronie klienta.
jQuery( function($){
var socket = io.connect(); ---> error happens here. can not load socket.io.js file
Rozwiązanycóż, użyłem tej linii:<script src="http://localhost:4000/socket.io/socket.io.js" ></script>
zamiast tego:<script src="{{ asset('/socket.io/socket.io.js'); }}" ></script>
i działało dobrze.