模板字符串
语法:
`string text`
`string text line 1
string text line 2`
`string text ${expression} string text`
tag `string text ${expression} string text`
http状态码
var http = require('http');
var url = require('url');
var util = require('util');
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/plain; charset=utf-8'});
res.end(util.inspect(url.parse(req.url, true)));
}).listen(3000);
主要是对于自己不理解的“200”的解释
HTTP状态码的作用是:web服务器用来告诉客户端,发生了什么事。
常见的有五种:
Ajax XMLHttpRequest相关数字意义拓展
注:
在 onreadystatechange
事件中,我们规定当服务器响应已做好被处理的准备时所执行的任务。
当 readyState
等于 4
且状态为 200
时,表示响应已就绪:
<script>
// XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
// 第一步:判断是否会支持响应对象
function loadXMLDoc(){
var xmlhttp;
if(window.XMLHttpRequest)
{
// IE7 谷歌 火狐 Opera 支持下列代码
xmlhttp =new XMLHttpRequest()
}
else
{
// IE5,IE6支持下列代码
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
}
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("a").innerHTML = xmlhttp.responseText
}
}
xmlhttp.open("GET", "./1.txt?fname=Henry&lname=Ford",true)
xmlhttp.send()
}
如需获得来自服务器的响应,请使用 XMLHttpRequest
对象的 responseText
或 responseXML
属性。
ASP文件和PHP文件简介
ASP文件:
<%...%>
:ASP文件和HTML文件很相似,都包含有HTML标签,不同的是ASP文件中还包含有服务器端脚本代码。ASP用“<%”来表示服务器端脚本的开始,用“%>”来表示服务器端脚本的结束
PHP文件:
基本格式:
主要是用于服务端的脚本程序,可用于收集表单数据,生成动态网页或者接收或发送Cookies
node.js路由
- 什么是路由:
告诉你应该去哪,对于前端是导向告诉浏览器应该去哪,即是不同的地址去响应不同的功能,起到划分不同的地址的这个导向我们可以称之为路由,就比如网上举的例子:注册接口可能就是将用户信息插入数据库,登录接口就是验证一下数据库是否有正确,他们分别对应不同的模块,我们需要划分这些地址,就有了路由这个概念
利用if…else语句来区别不同的路由,做不同的逻辑响应:
const http = require('http')
const { post } = require('jquery')
const host = 'localhost'
const port = '8888'
const sever = http.createServer((req, res) => {
res.writeHead(200, { 'Content-Type': 'text/plain' })
if (req.method === 'GET') {
if (req.url === '/api/list') {
res.end('查询列表接口响应')
} else {
res.end('GET接口响应')
console.log(req.url);
}
} else if (req.method === 'POST') {
if (req.url === '/api/register') {
res.end("注册登录接口响应")
} else {
res.end('post接口响应')
console.log(req.url);
}
}
res.end('成功响应')
})
sever.listen(port, host, () => {
console.log(`Sever running at http://${host}:${port}`);
})
但是我们可以直接将其封装到一个js文件中,方便使用:
const { hasUncaughtExceptionCaptureCallback } = require('process')
const url = require('url')
function creatApplication() {
// 收集响应集合
this.get = {}
this.post = {}
const APP = (req, res) => {
// 借助URL内置模块来获取路由
let method = url.parse(req.url).pathname
// 统一换成小写处理
let method = req.method.toLowerCase()
// 处理一下传递参数
if (this[method][pathname]) {
if (method === 'get') {
this[method][pathname](req, res);
} else {
// 统一将post请求放到body上
let params = ''
req, on('data', chunk => {
params += chunk
})
req.on('end', () => {
req.body = params
this[method][pathname](req, res)
})
}
} else {
res.end('404')
}
}
// APP身上挂载方法
APP.get = (url, cb) => {
this.get[url] = cb
}
APP.post = (url, cb) => {
this.post[url] = cb
}
return APP
}
module.exports = creatApplication()