zoukankan      html  css  js  c++  java
  • node中的路由

    路由:根据用户请求路径的不同返回不同的数据或者页面
    前端路由: 根据用户请求路径的不同渲染不同的数据 一般用来做单页面开发 SPA
    路径发生改变,页面会发生渲染但是页面不会跳转 不会发送到后端的。
    后端路由:根据用户请求路径的不同返回不同的数据或者html页面 一般情况下后端路由都用来做接口。会接收到请求的路径。
    每跳转到不同的URL,都是重新访问服务端,然后服务端返回页面。
    需要注意的是,当需要访问的页面使用jQuery书写js时,需要将req.url路径变为jquery路径,当需要访问的是多张图片时,修改路径固然有用,但是解决不了多张图片的问题,此时需要判断,判断条件为正则//img/.+.png/.test(req.url)【/img/1.png、/img/2.png】,这样所有图片就可以显示出来了,不会请求不到,但是,现在是get获取,get后可以添加参数的,如果在路径后添加name=zhangsan&age=18/这些参数的话,页面请求不到,这时看到小窗口的路径在js中并找不到,因为我们所书写的路径是请求的路径,小黑窗返回的是所有的路径,包括了请求的参数,所以,将所有的req.url变成pathname,因为pathname是路由的核心,为请求的路径,query是请求的参数。
    ajax({
    url:http:localhost:8080/login
    })


    req.url == /login

    {
    status:true,
    info:"成功"
    }

    http:localhost:8080/fsDeom/index.json

    http:localhost:8080/capi/product/qiuxie/open/homefirst

    server 后端路由案例 端口号为9000时,路径为/一个页面,路径为/list一个页面
    const http = require("http");
    const fs = require("fs");
    http.createServer((req,res)=>{
    if(req.url == "/"){
    //返回index.html

    fs.readFile("./index.html",(err,data)=>{
    res.end(data);
    })
    }else if(req.url == "/list"){
    //返回list.html

    fs.readFile("./list.html",(err,data)=>{
    res.end(data);
    })
    }else if(req.url == "/goodsList"){ //假如说访问这个后端接口,返回一个数据。这个路径只能返回字符串
    res.writeHead(200,{"content-type":"application/json;charset=utf8"});
    // 状态码为200时,返回数据,返回json文件,为中文。
    res.end(JSON.stringify({
    status:true,
    info:"请求成功"
    }))
    }
    }).listen(9000) //端口号,后端创建的额,所以后端不用接收。


    简写node命令:
    先npm init 初始化json


    在package.json script键里写上想要的命令,然后node里
    npm run dev(自己自定义的key)。如果是更改在start里,直接npm start就可以。

    url的组成部分
    http:80 8080
    https:443
    协议https
    域名:www.baidu.com
    端口号 80
    请求的路径 /s (就是pathname,所有路由的核心,围绕pathname来的)
    请求的参数(query。)wd=%E5%8D%83%E9%94%8B%E5%9F%B9%E8%AE%AD&rsv_spt=1&rsv_iqid=0x9ea1e1150000b088&issp=1&f=3&rsv_bp=0&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=1&rsv_sug3=1&rsv_sug1=1&rsv_sug7=001&rsv_sug2=1&rsp=0&rsv_sug9=es_2_1&rsv_sug4=1016&rsv_sug=9
    请求的页面

  • 相关阅读:
    文件的上传
    自定义EL表达式的函数
    JSTL 自定义标签
    Java c3p0连接池之二
    Java c3p0连接池
    JSP 登录与注册的小案例
    Java jdbc 连接oracle之三(封装工具类)
    Java jdbc 连接oracle之二(使用properties文件)
    Swift中Notification.Name自定义枚举
    swift UITableViewCell 策划删除,iOS11之后 设置侧滑不到最左边
  • 原文地址:https://www.cnblogs.com/newskill/p/10301789.html
Copyright © 2011-2022 走看看