jsonp请求

用node简单搭建服务器实现后端jsonp请求

后端接口

导入express模块,导入jsonp数据

//导入express模块
const express = require('express')
//express实例化
const app = express()
//导入jsonp数据
const appData = require('./data.json')

const seller = appData.seller

const router = express.Router()
//定义接口
router.get('/getinfo', function(req, res, next) {
  var _callback = req.query.callback;
  var _data = seller;
  if (_callback){
      res.type('text/javascript');
      res.send(_callback + '(' + JSON.stringify(_data) + ')');
  }
  else{
      res.json(_data);
  }
})

app.use('/api', router)

const port = process.env.PORT || 8900

module.exports = app.listen(port, function (err) {
  if (err) {
    console.log(err)
    return
  }
  console.log('Listening at http://localhost:' + port + '\n')
})

前端请求

//安装jsonp包并导入
//npm install jsonp
import originJsonp from 'jsonp'
//用created钩子抓取数据
//originJsonp(url,options,callback)
//url是路由
//options是后端要执行的callback函数,'callback'变量名称要与后端保持一致
//callback是处理返回数据的回调函数
created() {
        originJsonp('http://localhost:8900/api/getinfo?', {callback:'json',prefix: 'b'},                     
            (err, data) => {
                 if (!err) {
                     this.seller=data
                  } else {
                     reject(err)
                  }
         })
    },

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值