0


vue向api请求不到数据,返回了一个html页面,使用postman发送请求却可以得到数据

项目场景:

在vue.config.js中配置了代理

devServer:{
    port:8080,
    proxy:{'/webhandler.ashx':{
        target:'https://test.com/',//后台域名接口// ws: true,                   //代理websockets,配置这参数
        secure:false,// https接口配置这个参数
        changeOrigin:true,// 跨域},}}

然后向这个接口传入参数发送post请求,希望获取数据


问题描述

在使用axios发送post请求时,却发现得不到数据,返回了一个页面
在这里插入图片描述
输出:
在这里插入图片描述

但是使用postman向api发送请求却可以得到数据
在这里插入图片描述


原因分析:

这里其实是因为后端会对请求的ip地址做一个分析,如果直接使用localhost:8080访问,那么后端会认为这是一个有问题的请求,所以返回了网页
在这里插入图片描述

如果使用IP地址再访问一次呢
在这里插入图片描述
得到了数据


解决方案:

配置代理的时候,把主机名配置为IP地址

devServer:{
    host:'10.1.8.99',
    port:8080,
    proxy:{'/webhandler.ashx':{
        target:'https://test.com/',//后台域名接口// ws: true,                   //代理websockets,配置这参数
        secure:false,// https接口配置这个参数
        changeOrigin:true,// 跨域},}}

这样我们启动项目就是用的ip地址了,也就可以获取到数据了
在这里插入图片描述

标签: vue post

本文转载自: https://blog.csdn.net/weixin_45286211/article/details/123810877
版权归原作者 君子使物,不为物使 所有, 如有侵权,请联系我们删除。

“vue向api请求不到数据,返回了一个html页面,使用postman发送请求却可以得到数据”的评论:

还没有评论