Node的web编程(三)

news2024/9/23 3:18:35

一、jQuery中对ajax封装

1、底层封装:封装了XMLHttpRequest对象,既可以发送get请求,也可以发送post请求

$.ajax({

url:'服务器地址',

type:'请求方式',

data:{ //客户端向服务器发送的请求数据

参数名1:参数值1,

参数名2:参数值2

        },

dataType:'服务器响应的数据的格式' //json、html、xml等

success:function(result){ //请求-响应成功后的回调函数。

参数result保存的服务器给客户端响应的数据

        }

error:function(err){ //请求-响应成功后的回调函数。

err存放的是错误的信息

        }

}

2、高层的封装

(1)$.get(url,[data],[callback],[type]) //发送的是get方式的请求

        url:请求地址

        data:发给给服务端的请求数据

        callback:请求成功后的回调函数

        type:服务器响应的数据类型

前端页面:

<p>Login</p>
<label for="">
    <input type="text" placeholder="用户名" id="username">
</label>

<label for="">
    <input type="text"  placeholder="密码" id="pwd">
</label>
<button id="btn_submit">登录</button>
<br>
<div id="my_div">
</div>
<script>
    $(function (){
        $('#btn_submit').bind('click',function (){
            $.ajax({
                url:'http://127.0.0.1:9000',
                type:'get',
                data:{
                    username:$('#username').val(),
                    pwd:$('#pwd').val()
                },
                dataType:'text', //服务器响应的数据是纯文本字符串
                success:function (res){
                    console.log(res);
                    $('#my_div').html(res);
                }
            })
        })
    })
</script>

 后台服务器

const http = require('http');
const url = require('url');
const getServer = http.createServer((req,res)=>{
    res.setHeader('Access-Control-Allow-Origin','*');
    res.setHeader('Access-Control-Allow-Methods','GET,POST,DELETE,OPTIONS');
    let get_url = url.parse(req.url,true).query;
    res.setHeader('Content-Type','text/html;charset=utf8');
    console.log(get_url);
    res.end(`用户名:${get_url.username}<br>密码:${get_url.pwd}`);
})
getServer.listen(9000,'127.0.0.1',()=>{
    console.log('服务器已启动~')
})

 

(2)$.post(url,[data],[callback],[type]) //发送的是post方式的请求  

二、Node的Web框架

1、web框架:是一个半成品,开发者只需要按要求传递数据,就可以生成一个web服务器。

2、Express框架,是node开发web服务器的框架、小巧、灵活,可以帮助开发者快速的创建node web服务器。

作用:

(1)允许用户创建中间件响应http请求

(2)用户可以自己创建路由表执行http的方法

(3)允许在服务器端动态渲染参数传递给html页面

3、前后端分离

4、WebStorm创建Express项目

(1)bin/www文件:项目的启动文件,可以修改默认的端口号。在该文件中可以修改默认的端口号。

(2)node_moudles文件夹:保存的支撑项目运行的模块

(3)public文件夹:存放的项目运行所用的静态文件(image、css、js)

(4)routes文件夹:存放的是路由中间件文件(路由文件)

(5)views文件夹:存放的是页面文件

(6)app.js文件:http服务器的配置文件,在此文件中对服务器进行配置

(7)package.json文件:包含项目的信息(项目名称、版本号、启动指令、已安装的模块等)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/32735.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SolidWorks弯曲的波纹管制作教程

如何使用SolidWorks制作波纹管呢?可能很多小伙伴都会做,那完全的波纹管如何制作呢?有的小伙伴可能不止一种方法,可能有很多方法,可以用扫描路径等,下面我用其他方法去实现下面效果图 首先新建一个零件,选前视基准面,画一个40MM的圆,如下图 然后用拉伸凸台命令,长度给…

.net----结构和枚举

结构和枚举结构结构的声明和调用声明调用结构&#xff1a;结构的成员枚举枚举的使用枚举&#xff1a;Flags枚举结构 轻量级的类&#xff0c;与类很相似&#xff0c;均为包含数据成员和函数成员的数据结构 结构与类的区别 结构是值类型且被称为具有值语义&#xff1b;而类是引…

【Lilishop商城】No2-2.确定软件架构搭建一(本篇包括MVC框架、持久框架、缓存、认证工具、安全框架等)

仅涉及后端&#xff0c;全部目录看顶部专栏&#xff0c;代码、文档、接口路径在&#xff1a; 【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 上一篇已经看了项目的开发架构&#xff0c;都需要哪些技术&#xff0c;都按照哪些规范&#xff0c;都哪…

免杀Backdoor-factory

Patch ● 通过替换EXE、DLL、注册表等方法修复系统漏洞或问题的方法 ● BDF&#xff1a;向二进制文件中增加或者删除代码内容 ○ 某些受保护的二进制程序无法patch ○ 存在一定概率文件会被patch坏掉 后门工厂 ● 适用于windows PE x32/x64和Linux ELF x32/x64(OSX) ● 支持…

【JVM】内存模型:原子性、可见性、有序性的问题引出与解决

一、内存模型 很多人将【java 内存结构】与【java 内存模型】傻傻分不清&#xff0c;【java 内存模型】是 Java MemoryModel&#xff08;JMM&#xff09;的意思。 简单的说&#xff0c;JMM 定义了一套在多线程读写共享数据时&#xff08;成员变量、数组&#xff09;时&#x…

(七)RabbitMQ持久化

RabbitMQ持久化1、概念2、队列持久化3、消息持久化4、不公平分发5、预取值1、概念 默认情况下 RabbitMQ 退出或由于某种原因崩溃时&#xff0c;它忽视队列和消息&#xff0c;除非告知它不要这样做。确保消息不会丢失需要做两件事&#xff1a;我们需要将队列和消息都标记为持久化…

广义OOD检测最新综述

arXiv在2021年10月21日上传的论文**“Generalized Out-of-Distribution Detection: A Survey“&#xff0c;作者来自新加坡的南洋理工大学&#xff08;NTU&#xff09;和美国的威斯康星大学Madison分校**。 OOD检测对确保机器学习系统的可靠性和安全性至关重要&#xff0c;例如…

秦皇岛科学选育新品种 国稻种芯·中国水稻节:河北谱丰收曲

秦皇岛科学选育新品种 国稻种芯中国水稻节&#xff1a;河北谱丰收曲 冀时客户端报道&#xff08;河北台 张志刚 米弘钊 赵永鑫&#xff09; 新闻中国采编网 中国新闻采编网 谋定研究中国智库网 国稻种芯中国水稻节 中国农民丰收节国际贸易促进会 中国三农智库网-功能性农业农业…

Java对象拷贝原理剖析及最佳实践

作者&#xff1a;宁海翔 1 前言 对象拷贝&#xff0c;是我们在开发过程中&#xff0c;绕不开的过程&#xff0c;既存在于Po、Dto、Do、Vo各个表现层数据的转换&#xff0c;也存在于系统交互如序列化、反序列化。 Java对象拷贝分为深拷贝和浅拷贝&#xff0c;目前常用的属性拷…

2023年系统规划与设计管理师-学习计划安排

一.学习计划和安排&#xff1a; 序号 学习内容 分数以及题型 学习安排 完成日期 1 浏览教程&#xff0c; 了解知识结构 1天 11/24 2 前三章内容&#xff1a; 课本&#xff0c; 单元练习&#xff0c; 思维导图&#xff0c; 总结归纳&#xff0c; 第一遍背诵 分数占…

希望所有计算机学生都知道这些宝藏课程

数据结构 青岛大学——王卓老师的数据结构与算法基础 浙江大学——陈越、何钦铭老师的数据结构课程 清华大学——邓俊辉老师的数据结构课程 北京大学——数据结构基础课程 操作系统 哈工大——李治军老师的操作系统 清华大学——操作系统原理 南京大学——操作系统概述 计算…

机器学习知识经验分享之一:卷积神经网络介绍

文章目录前言一、卷积神经网络的构成1.卷积层2.池化层3.激活函数4.批量归一化5.损失函数二、卷积神经网络的特点总结前言 本系列文章将对机器学习知识进行分享总结。便于大家从理论层面了解人工智能基础原理&#xff0c;从而更好的运用算法发论文写作以及实际应用。关注即免费…

CNI设计解读

何为cni&#xff1f; kubernetes在设计网络方案的时候并没有设计统一的网络方案&#xff0c;只提供了统一的容器网络接口也就是所谓cni&#xff0c;这么做的目的就是为了遵循kubernets的核心理念OutOfTree&#xff0c;简单来讲就是专注于自身核心能力&#xff0c;将其他能力类…

使用albumentations对coco进行数据增强

数据增强的必要性 目前几乎所有描述最先进的图像识别模型的论文都使用了基本的增强技术 深度神经网络需要大量的训练数据来获得良好的结果&#xff0c;并防止过度拟合&#xff0c;然而要获得足够的训练样本往往非常困难&#xff0c;多种原因可能使得收集足够的数据非常困难&a…

【计算机毕业设计】27.仓库管理系统源码

一、系统截图&#xff08;需要演示视频可以私聊&#xff09; 摘 要 网络的广泛应用给生活带来了十分的便利。所以把仓库管理与现在网络相结合&#xff0c;利用JSP技术建设仓库管理系统&#xff0c;实现仓库管理系统的信息化。则对于进一步提高公司的发展&#xff0c;丰富仓库管…

户外运动耳机推荐、十大户外运动耳机品牌推荐排名清单

最近南方的天气有点秋高气爽&#xff0c;这样的天气要说最适合进行什么运动&#xff0c;那户外徒步肯定是最佳选择&#xff0c;在这样适宜的天气下去拥抱大自然&#xff0c;体验户外山野环境的美好绝对是个很棒的过程&#xff01;但是一个人的长时间徒步多少还是会少了些味道&a…

408 | 大纲知识点考点冲刺 复习整理 ——【计网】第三章 数据链路层

自用冲刺笔记整理。 部分图片来自王道。 加油ヾ(◍∇◍)ノ゙ (一)数据链路层的功能 结点: 主机、 路由器。帧 : 链路层的协议数据单元, 封装网络层数据报。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,…

11.24Spring学习第四天

整合Mybatis(重点) 步骤 1.引入依赖 <!--引入相关依赖--><!-- spring jdbc --><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></…

在字节跳动做了5年软件测试,12月无情被辞,想给划水的兄弟提个醒...

前言 先简单交代一下背景吧&#xff0c;某不知名 985 的本硕&#xff0c;17 年毕业加入字节&#xff0c;以“人员优化”的名义无情被裁员&#xff0c;之后跳槽到了有赞&#xff0c;一直从事软件测试的工作。之前没有实习经历&#xff0c;算是5年的工作经验吧。 这5年之间完成…

如何在数据库只保存oss上的文件名, 当查询数据时根据字段的文件名, 获取oss的公网访问地址,并对字段内容重写

如何在数据库只保存oss上的文件名, 当查询数据时根据字段的文件名, 获取oss的公网访问地址,并对字段内容重写. 有这样一个需求, 图片上传到oss 上, 返回文件名和公网访问地址, 但是要求数据库中只存储文件名称. 有两个目的: 数据库只存储文件名称, 方便后期oss 上数据迁移到其他…