• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 利用promise及参数解构封装ajax请求的方法

利用promise及参数解构封装ajax请求的方法

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了promise,参数解构,封装ajax请求等相关知识,希望对您有所帮助

这篇文章主要介绍了利用promise及参数解构封装ajax请求的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1、前端代码

<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title></head><body><script>/** * type: get/post * url: http://localhost:3000 http://localhost:3000/details http://localhost:3000/users * data: lid=5 / uname=lili&upwd=123456 * dataType: '' / 'json', 如果服务端返回的是json格式字符串,就通过dataType通知ajax函数自动转换为对象 **/ajax({    type: 'get',    url: 'http://localhost:3000',    dataType: 'json'})// data 不写在解构时值默认为 data: undefinedajax({    type: 'get',    url: 'http://localhost:3000/details',    data: 'lid=0',    dataType: 'json'})ajax({    type: 'post',     url: 'http://localhost:3000/users',     data: 'uname=lili&upwd=123456',}).then(function(res){    alert(res)})// dataType 不写在解构时值默认为 dataType: undefinedfunction ajax({type, url,data, dataType}){    return new Promise(function(open){        var xhr = new XMLHttpRequest()        xhr.onreadystatechange = function(){            if(xhr.readyState === 4 && xhr.status === 200){                if(dataType === 'json'){                    var res = JSON.parse(xhr.responseText)                } else {                    var res = xhr.responseText                }                console.log(res)                open(res)            }        }        if(type === 'get' && data !== undefined){            url += `?${data}`        }        xhr.open(type, url, true)        xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded')        if (type === 'get') {            xhr.send()        } else {            xhr.send(data)        }    })}</script></body></html>

另:ajax实际代码实现如下

<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title></head><body><script>var xhr = new XMLHttpRequest()xhr.onreadystatechange = function(){    if(xhr.readyState === 4 && xhr.status === 200){        console.log(xhr.responseText)    }}xhr.open('get', 'http://localhost:3000', true)xhr.send()</script></body></html>

2、后端代码

1) 创建一个后端项目


在这里插入图片描述


2) 在routes下创建index.js,users.js,代码如下

// index.jsvar express = require('express');var router = express.Router();/* GET home page. */var products = [    {        lid:1,        pname:'笔记本',        price:3400    },    {        lid:2,        pname:'手机',        price:5400    },    {        lid:3,        pname:'iPad',        price:6400    }]router.get('/', function(req, res, next) {    res.send(products)});router.get('/details', function(req, res, next){    var lid = req.query.lid    res.send(products[lid])})module.exports = router;

3、注:

为避免跨域,可将前端代码和后端同时放在一个项目内,使用同一地址,再发送请求调取接口。



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 利用promise及参数解构封装ajax请求的方法

相关文章

  • 2022-04-29Photoshop设计卡通风格的云彩效果
  • 2022-04-29Photoshop图层样式制作质感光盘包装
  • 2022-04-29简单常用技巧之React组件间通信(整理分享)
  • 2022-04-29Illustrator结合PS打造碎花风格立体字
  • 2022-04-29PHP中子类如何调用父类的静态方法
  • 2022-04-29YII如何将对象转化为数组或直接输出为json格式
  • 2022-04-29ThinkPHP5框架中Redis是如何使用和封装?
  • 2022-04-29小程序开发实践之浅析如何获取手机号码
  • 2022-04-29PS打造飘起来的房子‘飞屋环游记’合成教程
  • 2022-04-29Photoshop制作金属嵌钻图案效果的字效

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 宝塔面板使用中常见的9个问题(附答案)
    • Javascript中常见的内置对象有哪些
    • SQL语句中的with as该怎么用
    • PHP会话控制:cookie和session区别与用法深入理解
    • 使用CorelDRAW绘制椭圆和圆形
    • robots.txt 语法详解:*、$、?等字符的含义及用法
    • Photoshop制作立体效果的草莓艺术字
    • 带你搞懂怎么基于Docker安装Nginx搭建静态服务器
    • Photoshop高效操作配置攻略心得全分享
    • 浅谈bootstrapTable如何动态设置行和列的颜色

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有