“Ne peut pas OBTENIR /” avec Connecter sur Node.js
Je suis en train de commencer à servir à certaines pages web statiques à l'aide de connect
comme ceci:
var connect = require("connect");
var nowjs = require("now");
var io = require("socket.io");
var app = connect.createServer(
connect.static(__dirname + '/public')
);
app.listen(8180);
J'ai donc ajouté un simple index.html
à la /public
répertoire sur le même répertoire que le app.js
fichier, mais lorsque j'essaie d'afficher la page sur mon navigateur, j'obtiens cette réponse d'un nœud:
Ne peut pas OBTENIR /
Ce que je fais mal et comment je peux y remédier?
Vous devez vous connecter pour publier un commentaire.
Ce code devrait fonctionner:
Dans connect 2.0 .createServer() la méthode obsolète. Utilisez connect() à la place.
Vous avez peut-être ici parce que vous êtes la lecture de la
Apress PRO AngularJS
livre...Comme il est décrit dans un commentaire à cette question par
KnarfaLingus
:[DÉBUT DE CITATION]
Le module connect a été réorganisé. faire:
et aussi
Par la suite votre
server.js
peut être écrite comme:[FIN DE CITATION]
Bien que je le fais, comme le livre suggère, de façon plus concise comme ceci:
Vous verrez le message
Cannot GET /
si vous ne spécifiez pas la page que vous essayez d'obtenir, en d'autres termes, si votre URL est quelque chose commehttp://localhost:8180
. Assurez-vous d'entrer le nom d'une page, par exemplehttp://localhost:8180/index.html
.Eu le même problème. Il a été résolu comme décrit ci-dessus.
Dans mon index.js
et dans mon index.html
l'three.js était juste là pour le chemin de tests. Ceci permettra de définir des enfants tous les fichiers de démarrage dans le répertoire racine de votre application. Aussi socket.io.js peut être appelé automatiquement à l'aide de
<script src = "/socket.io/socket.io.js">
par le biais de certains de la magie noire (puisqu'il est physiquement une node_modules et répertoire lib entre les deux) .Vous pouvez également essayer de st, un nœud module pour servir des fichiers statiques. L'installation est triviale.
Et voici comment mon server-dev.js fichier ressemble à ceci:
ou (avec le cache désactivé):
La solution "Ne peut pas Obtenir /peuvent habituellement être déterminé, si vous faites un "ng construire" dans la ligne de commande. Vous trouverez le plus souvent que l'un de vos "importations" n'a pas le bon chemin.
La meilleure façon de servir les fichiers statiques est d'utiliser la "harpe". Il peut être trouvé ici. Vous pouvez vous servir de vos fichiers à partir de l'emplacement que vous souhaitez via le nœud est:
Espère que cette aide.
Vous pourrait être nécessaire pour
restart
le processus siapp.get
not
de travail. Appuyez surctl+c
et puisrestart node app
.Vous souhaitez généralement de rendre les modèles comme ceci:
Cependant, vous pouvez également fournir un contenu statique à faire usage:
Maintenant, tout dans le répertoire /public de votre projet sera livré sous forme de contenu statique à la racine de votre site par exemple, si vous placez default.htm dans le dossier public si sera disponible en visitant /default.htm
Prendre un coup d'oeil par le biais de la express API et Connecter Statique middleware docs pour plus d'info.