淡月286958
2022-11-28
个人意见供参考哈:
1、《Node.js高级编程》2、《了不起的Node.js:将JavaScript进行到底》3、《 全栈开发之道:MongoDB+Express+AngularJS+Node.js 》
CEO_ZKF
2022-04-11
qq_两点一线_03138944
2022-01-21
你的dataType写错了
zzhhunter
2021-10-11
你得到的req.url应该是"/路径" , 而fs.readFile读的应该是"路径"就够了, 没有前面的斜杠
似朝朝我心
2021-06-22
漏了48关键的一行
似朝朝我心
2021-06-21
换为new URL 这样获取 pathname:
let {pathname}=new URL(req.url,'http://locathost:3000')
似朝朝我心
2021-06-21
找到错了,这里解构赋值写错了, let {pathName, query} = url.parse(req.url,true),我以为pathName是随意命名的,打印了 url.parse(req.url,true)才知道是
Url { protocol: null, slashes: null, auth: null, host: null, port: null, hostname: null, hash: null, search: '?username=qinfubin&password=123456', query: [Object: null prototype] { username: 'qinfubin', password: '123456' }, pathname: '/login', path: '/login?username=qinfubin&password=123456', href: '/login?username=qinfubin&password=123456'}
尐樂
2021-05-13
我也是这个问题,请问楼主知道怎么解决了嘛?
semi82
2021-05-02
这个执行有些不对吧
weixin_慕瓜9243887
2021-04-08
你的html 的名字 写的是 index.html,而你在浏览器中访问的是1.html
weixin_慕娘3174001
2021-03-24
有,切图的课,https://www.imooc.com/learn/1228
古城深巷旧少年
2021-03-14
weixin_慕盖茨2108650
2021-03-13
url.parse 这个已经被废弃的原因吧
weixin_慕盖茨2108650
2021-03-02
沧海之滴张泽昆
2021-02-27
这个是要处理权限控制的
蒹葭苍沧
2021-02-26
从从c盘根目录去找往下一级一级去找,或者转移到文件夹下面,或者用vscode打开有个终端控制台也可以直接使用
APE_180
2021-02-24
可以找别的视频
慕妹0291058
2021-01-28
不是,get和post是http不同的请求方式,跟同步异步没有关系
同步异步主要是指程序中调用某个方法或接口时,是否等待方法执行结束,再继续执行后面的程序代码。
同步既是等待方法执行结束,再继续执行后面的代码
异步是不等待方法执行结束,继续执行后面的代码,一般异步方法会传递一个回调函数,回调函数会在方法执行结束时,被触发调用。
举个实际的例子,小明要烧开水喝,看电视。同步既是插上电,烧水,等待水烧好,倒在杯子里,再端着水去看电视。异步既是插上电,烧水,接着就去看电视,等水烧好了,再去倒水来喝。
一个正在自学PHP的仙女
2021-01-21
图2 才是正常的初始化模块的步骤,图1是你进入了node的命令行工具,初始化工作不能在命令行工具状态执行,图1中的提示信息也说明了,应该退出命令行状态操作
慕田峪6263377
2021-01-16
hello,你好
你的也可以哦。只不用你这个格式的话,在获取值和赋值的时候就要改一下了。
比如视频中拿到用户名admin之后,获取密码是user[username],相当于user.admin,拿到密码123456,。
而用你的个格式,就要先去查找,user.username===admin的, 然后才拿到对应的密码。
并且你的也有点问题,应该是一个数组才对,毕竟用户是多个的。
用你的思维去写的话,应该如下:
let user=[
{
_id:'xxxxxxx',
username:'admin',
password:1'23456'
},
{
_id:'xxxxxxx',
username:'user1',
password:1'23456'
}
]
慕田峪6263377
2021-01-15
ctrl + c
做个json
2020-11-26
你把你写的代码贴出来,不然怎么知道你哪里写错了
慕妹5096010
2020-11-19
我觉得这个没有什么可纠结吧,每个人可以自己的逻辑,老师讲的是他自己的逻辑,最终结果一样应该就行,比如我自己写的就跟老师的不同。重在理解吧
const http = require('http');
const fs = require('fs');
const querystring = require('querystring');
const registeredUserInfos = {};
http.createServer((req, resp) => {
if (req.method == 'GET') {
fs.readFile(`./${req.url}`, (err, data) => {
if (err) {
resp.writeHead(404);
resp.end('Page not found.');
} else {
resp.end(data);
}
});
} else if (req.method == 'POST') {
let data = [];
req.on('data', (chunk) => {
data += chunk;
});
req.on('end', () => {
let params = querystring.parse(data);
if (params.action == 'reg') {
if (registeredUserInfos[params.username]) {
resp.writeHead(500);
resp.end('Invalid user account, Please choose other to try.');
else {
registeredUserInfos[params.username] = params;
resp.end('Registered successfully!');
}
} else if (params.action == 'login') {
if (!registeredUserInfos[params.username]) {
resp.writeHead(500);
resp.end('Invalid user account, Please choose other to try.');
} else {
let userinfo = registeredUserInfos[params.username];
if (params.password == userinfo.password) {
resp.end('Login successfully');
} else {
resp.end('Invalid user password, Please choose other to try.');
}
}
} else {
resp.writeHead(500);
resp.end('Invalid action, Please choose other to try.');
}
});
}
}).listen(3000);
慕仰0274710
2020-09-12
因为,如果在head里的话,在代码执行的时候会先执行js部分的内容,这个时候还没有dom节点,所以在head里不起作用,现在body里就是为了保证在js执行的时候是有dom存在的
铭铭__
2020-07-31
噢 原来在后面讲了 我着急了
雷灵初心
2020-07-29
看图就能明白了:
qq_脸小话不多_0
2020-07-25
自带的,装了node就有的哦
qq_脸小话不多_0
2020-07-25
是node自带的模块啊
let http = require('http') 我用这个没有报错
IT界的刘德华
2020-07-16
飞鱼非鱼
2020-07-14
我也是,改成当前路径就好了,老师的放置位置和我们的不一样
fs.readFile(`.${path}`, (err, data) => {}