Tout d'abord, ma structure de fichiers :
web
-public
--login.html (la page de connexion est une page statique)
-veiws
--index.jade
-routes
--index.js
-app .js
Code frontal
$("#login").click(function(){
var username=$('#un').val();
var pw=$("#pw").val();
var data = {"un":username,"pw":pw};
$.ajax({
type:"post",
url:"/login",
async:true,
success: function(data,status){
if(status == 'success'){
location.href = '../views/index.jade';
}
},
error: function(data,status){
if(status == 'error'){
alert("密码或者用户名错误");
}
});
})
Que dois-je écrire dans l'url en $.ajax ?
De plus, le code de mon serveur est-il écrit en app.js ou index.js dans le dossier du routeur ? Ou créez un nouveau fichier js et écrivez-y le code du serveur, puis écrivez le répertoire relatif du fichier js dans l'URL (cela semble être le cas avec PHP).
Il y a aussi router.get('/', function(req, res, next){}) dans index.js et var router = require('./routes/index');app dans
app.js Qu'est-ce que la différence entre .use('/',router) et lequel est le nom de domaine de liaison ? Je crois comprendre qu'après le démarrage du serveur, il exécute automatiquement app.js, puis app.use équivaut à placer les fonctions dans une pile et à les exécuter dans l'ordre. Ensuite, lorsque index.js est exécuté, index.js restitue le modèle jade. dans les vues en fonction de l'adresse URL, et à chaque actualisation et nouveau rendu (il n'est pas clair si app.js est réexécuté sans actualisation ou si index.js est réexécuté).
Vous pouvez essayer de saisir le code suivant dans la console segmentFault
Ensuite vous obtiendrez/le contenu de ce fichier html.
votre question
Supposons que vous écoutez sur le port 3000 et que vous avez défini la route /login
Alors l'URL doit être /login
Le contenu derrière app.use est appelé middleware
Par exemple, je visite http://localhost:3000/api/login
Il se trouve que j'ai un middleware qui peut correspondre à /api/login, puis express transmettra les demandes à ce middleware pour le traitement
URL peut être relative ou absolue. Commence absolument à partir de
http(s)://
. Vous pouvez spécifier l'URL sur n'importe quel nom de domaine, mais vous devez faire attention au problème de croisement. accès au domaine. Relatif est l'URL relative à la page actuelle,http(s)://
开始,可以指定任何域名上的URL,不过要注意跨域访问的问题。相对的则是相对于当前页面的 URL,/<path>
/
开始的相对路径,相对于根,即当前页面所在的 Domain(主机域名)../<path>
../
连用表示上面若干层./
./
是同样的效果这里需要注意的是当前页面路径的认定,因为URL中
url
Explication
Le chemin relatif commençant par
En partant du chemin supérieur de la page actuelle, plusieurs
La page actuelle commence par le même chemin et n'a pas le même effet que
Ce qu'il faut noter ici, c'est l'identification du chemin de la page actuelle, car il y afolder/
有可简写成folder
,而有没有/
/<chemin>
/
, relatif à la racine, c'est-à-dire le domaine (nom de domaine hôte) où se trouve la page actuelle../<chemin>
../
peuvent être utilisés ensemble pour représenter les couches supérieures./
./
folder/
dans l'URL et peut être abrégé enfolder
, mais il n'est pas/
représente un emplacement complètement différent (dans l'utilisation répandue actuelle du routage, les répertoires ou les pages ne sont plus distingués par des extensions), il est donc généralement recommandé que le frontal écrive au moins le chemin relatif à la racine. #🎜🎜#Vous écrivez '/' pour représenter le port actuel, et l'url est votre chemin dans nodejs