前端与移动开发之vue-day2(4)

带大家通过 Node.js ,来手动实现一个JSONP的请求例子;

const http = require('http');
  // 导入解析 URL 地址的核心模块
  const urlModule = require('url');

  const server = http.createServer();
  // 监听 服务器的 request 请求事件,处理每个请求
  server.on('request', (req, res) => {
    const url = req.url;

    // 解析客户端请求的URL地址
    var info = urlModule.parse(url, true);

    // 如果请求的 URL 地址是 /getjsonp ,则表示要获取JSONP类型的数据
    if (info.pathname === '/getjsonp') {
      // 获取客户端指定的回调函数的名称
      var cbName = info.query.callback;
      // 手动拼接要返回给客户端的数据对象
      var data = {
        name: 'zs',
        age: 22,
        gender: '男',
        hobby: ['吃饭', '睡觉', '运动']
      }
      // 拼接出一个方法的调用,在调用这个方法的时候,把要发送给客户端的数据,序列化为字符串,作为参数传递给这个调用的方法:
      var result = `${cbName}(${JSON.stringify(data)})`;
      // 将拼接好的方法的调用,返回给客户端去解析执行
      res.end(result);
    } else {
      res.end('404');
    }
  });

  server.listen(3000, () => {
    console.log('server running at [url]http://127.0.0.1:3000'[/url]);
  });

vue-resource 的配置步骤:

直接在页面中,通过script标签,引入 vue-resource 的脚本文件;
注意:引用的先后顺序是:先引用 Vue 的脚本文件,再引用 vue-resource 的脚本文件;

发送get请求:

getInfo() { // get 方式获取数据
  this.$http.get('http://127.0.0.1:8899/api/getlunbo').then(res => {
    console.log(res.body);
  })
}

发送post请求:

postInfo() {
var url = 'http://127.0.0.1:8899/api/post';
// post 方法接收三个参数:
// 参数1: 要请求的URL地址
// 参数2: 要发送的数据对象
// 参数3: 指定post提交的编码类型为 application/x-www-form-urlencoded

 this.$http.post(url, { name: 'zs' }, { emulateJSON: true }).then(res => {
    console.log(res.body);
  });
}
发送JSONP请求获取数据:

jsonpInfo() { // JSONP形式从服务器获取数据
  var url = 'http://127.0.0.1:8899/api/jsonp';
  this.$http.jsonp(url).then(res => {
    console.log(res.body);
  });
}

配置本地数据库和数据接口API
先解压安装 PHPStudy;
解压安装 Navicat 这个数据库可视化工具,并激活;
打开 Navicat 工具,新建空白数据库,名为 dtcmsdb4;
双击新建的数据库,连接上这个空白数据库,在新建的数据库上右键 -> 运行SQL文件,选择并执行 dtcmsdb4.sql 这个数据库脚本文件;如果执行不报错,则数据库导入完成;
进入文件夹 vuecms3_nodejsapi 内部,执行 npm i 安装所有的依赖项;
先确保本机安装了 nodemon, 没有安装,则运行 npm i nodemon -g 进行全局安装,安装完毕后,进入到 vuecms3_nodejsapi目录 -> src目录 -> 双击运行 start.bat
如果API启动失败,请检查 PHPStudy 是否正常开启,同时,检查 app.js 中第 14行 中数据库连接配置字符串是否正确;PHPStudy 中默认的 用户名是root,默认的密码也是root

品牌管理改造
展示品牌列表添加品牌数据删除品牌数据Vue中的动画
为什么要有动画:动画能够提高用户的体验,帮助用户更好的理解页面中的功能;

阅读更多

没有更多推荐了,返回首页