使用VUE的axios解决调用百度地图api的跨域访问问题

在构建一个vue前后端分离的项目时候,需要用到百度地图提供的web服务,但是在使用axios方式发送get请求的时候,web页面不显示相应结果,在Google中按F12进入开发者模式之后,发现提示如下:

XMLHttpRequest cannot load
Origin http://localhost:8080 is not allowed by Access-Control-Allow-Origin.

根据网上的搜索结果,这应该是跨域调用问题,跨域问题的解决方案可以从客户端或者服务器端进行解决,由于项目调用的是公网开放的api,因此问题肯定出在前端上。

在vue-cli框架中,使用axios请求服务的语句如下:`

this.$axios
	.get("http://api.map.baidu.com/place/v2/suggestion?query="+ this.query +"&region=北京市&city_limit=false&output=json&ak=你的ak")
	.then(response=>{
         if(response.data){
         console.log(response.data)
    }

其中,所用的服务是百度地图提供的web地址检索服务,需要申请一个自己的密钥才可以使用,返回的结果为json格式。

直接调用出现如下问题:
在这里插入图片描述
解决方案:在vue项目的config文件夹下,找到index.js文件,在proxyTable下输入以下内容:

proxyTable: {
      '/api':{
        target:'http://api.map.baidu.com',
        changeOrigin:true,
        pathRewrite:{
          '^/api':''
        }
      }      

    },

其中,target为你的目标网址,因为本项目中的api请求地址需要根据外部输入值进行动态请求,所以无法将完整路径写上,这里写第一个/号前的基本网址即可。changeOrigin为True,表示允许跨域访问,并且重写了路径接口,该段语句表示,在后续get请求中,/api将会代替http://api.map.baidu.com的部分。

因此,此时在请求服务的时候,网址变为如下即可:

this.$axios
	.get("/api/place/v2/suggestion?query="+ this.query +"&region=北京市&city_limit=false&output=json&ak=你的ak")
	.then(response=>{
         if(response.data){
         console.log(response.data)
    }

虽然这里请求的网址是/api/place/v2/suggestion?query=,但是在解析的过程中会自动将/api替换成target中提供的网址,则实际请求网址是http://api.map.baidu.com/place/v2/suggestion?,和原来是一样的。

但是为啥还是请求失败呜呜呜呜呢
在这里插入图片描述
如图所示,这里并没有替换成功,变成了localhost开头的网址,于是我又开始了新一轮的问题检索。。由于localhost是基本路径,因此我尝试了在main.js中将默认路径也设置为了/api:

import axios from 'axios'
Vue.prototype.$axios=axios
axios.defaults.baseURL='/api'

(这里设置之后,get中的网址中就不需要加上/api了,因为在/api处进行了拦截并且将其设置成为了默认路径)

然而,,还是依然报错,没有变化,,就在我开始怀疑百度api是不是不能用这种重写接口的方式进行调用的时候,,我重新构建了一下项目:npm run dev。

在这里插入图片描述
成功获取后台json。在修改配置文件后,都需要重启一次项目!这里之前没特别注意过,特此记录。

其实跨域调用还有很多方法,这个只是其中一种,本人编程小白,初学vue当作学习笔记在此记录项目新得,欢迎大家互相交流

12-25
WinHex是一个专门用来对付各种日常紧急情况的小工具。它可以用来检查和修复各种文件、恢复删除文件、硬盘损坏造成的数据丢失等。同时它还可以让你看到其他程序隐藏起来的文件和数据。总体来说是一款非常不错的 16 进制编辑器。得到 ZDNetSoftwareLibrary 五星级最高评价,拥有强大的系统效用。 13.2 SR-11 更新内容: * 在目录浏览器列头添加新的快速过滤按钮,可以动态修改过滤设置。 * 修改索引算法,索引文件现在相当小。以前的索引文件将不能在这个版本中使用。 * 报告表格式修改为 tab 分隔文本文件,可以动态过滤或牵引。 * 注释现在使用 Unicode 字符集。 * 容器标题、文件名、描述、图象文件名、证据对象标题、注释、命令行参数全部使用 Unicode 字符。 * 现在可以在容器根目录选择证据对象查看。 * v13.2 保存的安全将不能用以前版本的 X-Ways Forensics 打开,它不能从以前版本的案例中导入某些项目。 * 书签列表同证据对象关联。 * 证据对象的名称在目录浏览器中单独的列中显示。这个字段在递归资源管理容器根和报告表中以及导入中起到很重要的作用。 * 丢失分区可以通过 X-Ways Forensics 找回。 * 重新创建 FAT 卷快照可以识别文件被重命名或移动。 * 支持 UDF 光盘格式中的多重会话。 * 精确的驱动器盘符写入保护(默认启用)。 * 自动保护容器选项。 * 目录浏览器选项现在允许锁定左边的列。 * 在目录浏览器上下文菜单中禁用排序的能力。 * 所有信息容器的文本可以记录到 messages.txt。 * 重新创建的证据文件容器优化后在添加大量文件时有较好的性能。 * 你可以立即查看 Windows 事件日志 (.evt) 文件。(仅 forensic 授权) * File Type Signatures.txt 支持更多的文件类型。 * 在创建映象文件时,Forensics 显示平均数据传输量(MB/分)和平均压缩比例。 * 容器报告现在更灵活。所有组件都可以选择。 * 当验证证据对象的 hash 或计算时,结果将被添加到证据对象的技术描述中。 * 标准的模板文件扩展名修改为 .tpl。 * 一些局部修复和改进。 单文件版本哦!~
<think>好的,用户想了解或使用WinHex工具,询问它的使用方法和下载方式。首先,我需要确认用户的需求是什么。WinHex是一个十六进制编辑器和磁盘编辑器,常用于数据恢复、计算机取证等场景。用户可能需要进行磁盘分析、文件恢复,或者处理低级数据操作。 接下来,我需要检查提供的引用内容。根据引用[1],用户已经提到了使用WinHex工具,并且有下载链接。不过,引用中的链接显示的是WinHex的官方网站,可能需要确认链接是否有效。同时,引用[2]到[4]的内容似乎和WinHex无关,但用户可能在其他上下文中提到过这些,所以需要专注在引用[1]的信息上。 用户的问题分为两部分:使用方法和下载。关于使用方法,我需要简要介绍WinHex的主要功能,比如十六进制编辑、磁盘克隆、数据恢复等,并给出基本步骤。例如,打开文件或磁盘、进行编辑或分析、保存更改。同时,提醒用户谨慎操作,避免数据丢失。 关于下载,引用[1]中提到了下载地址,但实际检查提供的引用链接是否正确。根据引用[1],正确的下载链接应该是WinHex的官方网站。我需要确保提供的链接准确,并且指导用户如何从官网下载,避免第方下载带来的风险。 另外,需要注意用户可能对计算机取证或数据恢复不熟悉,所以解释时要简明易懂。同时,强调软件的合法使用,遵守相关法律法规。可能还需要提到系统兼容性,比如支持哪些Windows版本,是否有64位版本等。 最后,考虑到用户可能需要进一步帮助,生成相关问题,如系统兼容性、替代软件、数据恢复步骤等,这样用户可以根据自己的需求继续探索。</think>### WinHex工具使用与下载指南 #### 一、WinHex简介 WinHex是由X-Ways公司开发的十六进制编辑器及磁盘编辑工具,支持文件恢复、磁盘克隆、内存编辑等功能,适用于数据恢复、计算机取证等领域[^1]。 #### 二、下载方法 1. **官网下载** 访问[WinHex官方网站](https://www.winhex.com/winhex/),选择对应系统版本(Windows/Linux) *注意:需购买许可证,试用版功能有限* 2. **功能模块** - 十六进制文件编辑 - 磁盘扇区级访问 - RAID重组与内存分析 - 数据擦除与哈希校验 #### 、基础使用步骤(以文件恢复为例) ```python # 伪代码示例:文件头特征扫描 def file_recovery(disk_image): file_signatures = { "JPEG": b"\xFF\xD8\xFF", "PDF": b"\x25\x50\x44\x46" } scan_clusters(disk_image, file_signatures) ``` 1. 启动WinHex后选择"Open Disk"加载存储设备 2. 使用"Search → Find Hex Values"定位文件特征码 3. 通过"Recovery → Recover File"尝试恢复数据 4. 导出恢复文件前验证哈希值 #### 四、注意事项 - 操作前建议创建磁盘镜像(`Tools → Clone Disk`) - 修改原始存储介质可能导致数据不可逆损坏 - 支持NTFS/EXT4等20+文件系统解析
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值