fangBlood
fangBlood
采纳率77.8%
2019-01-07 13:26

在vue中使用vue-reosure请求外网的传感器接口,一直请求成功拿不到数据,希望大佬教我下!!!

40
已采纳

场景:网页中要调外部传感器的数据.老大给了我一个外网的接口,让我自己去调.我自己也测了这个接口没问题,是有数据的

图片说明

但我自己调这个接口,却一直显示连接成功,但没有数据返回来.

图片说明

我问后端,什么原因.他说我没有给请求头传参,说让我在请求头里传参,像图里面一样传个appId

图片说明

可我在代码里写了啊,但在上上张图里,请求头并没有什么变化啊.下面是我写的代码

图片说明

控制台一直报这个错误

图片说明

请问大佬们,我到底是哪里写错了啊,我该如何解决这个问题,请教一下我这个菜鸟!!!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • xiaomad xiaomad 2年前

    要确认server端允许你的地址跨域访问。
    从你的截图看,server端是http://47.101.158.124:10000
    在这个端口上提供服务的程序要允许你的客户端地址跨域访问才行。
    不光是POST,还有OPTIONS,都要在服务器端被允许才行。

    点赞 评论 复制链接分享
  • qq_41906761 人到中年就秃头 2年前

    赶紧像是后台没有夹@ResponseBody

    点赞 评论 复制链接分享
  • m0_37852904 阡路陌人 2年前

    让你后端管理人员设置下白名单就可以了

    点赞 评论 复制链接分享
  • qq_41800366 Ardor-Zhang 2年前

    看你的报错信息,就是跨域了。
    再者,Vue2.0就不再对vue-resource更新,而是推荐使用axios。
    利用axios可以试着解决你的问题。

    axios.post(urlString, 
        {
            data: data,
        },
        {
            headers: {
                'Authorization': 'Bearer ' + token,
                "Cookie" : 'sessionId=' + sessionId + '; recId=' + recId,
            }
        }
    )
    .then(res => fn)
    .catch(e => fn)
    
    
    点赞 评论 复制链接分享

相关推荐