学习express的时候获取public里面的lib文件下的jquery报404

865208014@qq.com 125个月前 提问
0

  1. 自己在public里创建了个lib,加入jquery包。
  2. app.js里的代码差不大。
  3. login.html不是直接引用网上的jquery,而是引用lib包的:
<script src="/public/lib/jquery-1.8.3.min.js"></script>

  然后就悲剧了,404。求解......  

  • 0
    小智 125个月前 回答

    在login.html页面中写成这样:

    <script src="/lib/jquery-1.8.3.min.js"></script>

    因为你在app.js中已经设置了静态文件的目录:

    app.use(express.static(require('path').join(__dirname,'public')))

    当请求静态文件时会自动去public目录下查找。

    最佳答案
  • 0
    865208014@qq.com 125个月前 回答
    app.js
    var express=require('express');
    var bodyParser=require('body-parser');
    var multer=require('multer');
    var app=express();
    app.use(bodyParser.json());
    app.use(bodyParser.urlencoded({extended:true}));
    app.use(multer());
    app.use(express.static(require('path').join(__dirname,'public')));
    app.set('views',require('path').join(__dirname,'views'));
    app.set('view engine','html');
    app.engine('.html',require('ejs').__express);
    app.get('/',function(req,res){
    res.render('login');
    });
    app.post('/login',function(req,res){
    console.log('usenameIs:'+req.body.usename);
    });
    app.listen(3000,function(){
    console.log('runInPort3000!');
    });
    login.html
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>login</title>
    </head>
    <body>
        <script src="/public/lib/jquery-1.8.3.min.js"></script>
    <div style="height:300px;width:350px;margin:100px auto;margin-left:auto;border:solid 1px;background: rgb(246, 246, 253);">
        <div style="width:200px;margin:auto;margin-top:50px;">
        <h1>用户登录</h1>
           <form action="#" role="form" method="post">
               <input id="username" type="text" name="username" style="margin: 20px 0px;">
               <input id="password" type="password" name="password">
               <div style="margin-top:30px;margin-left:125px;">
                   <input type="button" value="登 陆" onclick="login()">
               </div>
           </form>
        </div>
    </div>
    <script>
    function login(){
    var username=$('#username').val();
    var data={
    'username':username
    };
    $.ajax({
    url:'/login',
    type:'post',
    data:data
    });
    }
    </script>
    </body>
    </html>
  • 0
    payne 125个月前 回答
    如果你放在 public目录的lib文件夹 你访问 127.0.0.1/lib/jquery.js就是了
  • 0
    小智 125个月前 回答
    你贴点代码出来看看呢。