【Vue】jsonp 在 Vue 中的使用

22 篇文章 3 订阅

本期内容

在前端访问后端数据的时候经常会出现跨域问题,jsonp 便是其中一种解决的方式,前提是接口能够支持 jsonp 的访问。

目录

1、安装

2、添加到 main.js 中

3、按如下语法使用

4、以访问百度鹰眼轨迹 API 为例,发起 Get 请求


1、安装

npm install vue-jsonp --save

2、添加到 main.js 中

import VueJsonp from 'vue-jsonp'
Vue.use(VueJsonp)

3、按如下语法使用

var jsonParams={
    paramsA : ...
}
this.$jsonp('url',jsonParams).then(res => {
  ...
})

4、以访问百度鹰眼轨迹 API 为例,发起 Get 请求

以下请求仅展示,具体需求请参考 百度鹰眼轨迹API

// 获取轨迹信息
    getTrackInfo () {
      var params = {
        ak: '...',
        service_id: '...',
        entity_name: '...',
        start_time: ...,
        end_time: ...,
        dataType: 'jsonp'
      }
      this.$jsonp('http://yingyan.baidu.com/api/v3/track/gettrack', params).then(res => {
        console.log('res',res)
      }).catch(err => {
        console.log('err', err)
      })
    },

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue使用JSONP,首先需要安装JSONP插件。可以在package.json文件的dependencies添加"jsonp":"^0.2.1"来安装JSONP插件。安装完成后,可以在Vue组件使用二次封装的JSONP函数来发送跨域请求。 在.vue文件,可以使用以下代码来使用JSONP: ``` import { jsonp } from 'jsonp'; // 定义一个函数来发送JSONP请求 function fetchData() { const url = 'http://example.com/api?callback=callbackFunction'; jsonp(url).then(res => { console.log(res); // 处理返回的数据 }).catch(error => { console.error(error); // 处理错误 }); } export default { // ... methods: { fetchData() { fetchData(); } } } ``` 请注意,在请求的URL,需要指定一个与调用的JSONP的URL的callback值相对应的callback参数。在请求的回调函数,可以处理返回的数据。 以上是在Vue使用JSONP的基本方法。通过这种方式,可以发送跨域请求并获取返回的数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Jsonpvue使用](https://blog.csdn.net/yuenandehutu/article/details/121539904)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [vue使用jsonp](https://blog.csdn.net/yun_822/article/details/82727030)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值