Vue-resource JSONP报错Uncaught (in promise)

发布于 2022-09-06 06:30:08 字数 359 浏览 12 评论 0

前端使用Vue-resource JSONP跨域访问数据接口
network显示请求成功有数据,vue报错Uncaught (in promise)

clipboard.png

图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

jJeQQOZ5 2022-09-13 06:30:08

谢谢大家,没有完全理解jsonp,问题在接口没有实现对jsonp请求的包装
在这里提供一个网上找到的比较优雅的解决方案供大家参考,适用于flask
这种实现不需要对原有api接口做任何改动

"""
Taken from:  https://gist.github.com/1094140
"""

from functools import wraps
from flask import request, current_app


def jsonp(func):
    """Wraps JSONified output for JSONP requests."""
    @wraps(func)
    def decorated_function(*args, **kwargs):
        callback = request.args.get('callback', False)
        if callback:
            data = str(func(*args, **kwargs).data)
            content = str(callback) + '(' + data + ')'
            mimetype = 'application/javascript'
            return current_app.response_class(content, mimetype=mimetype)
        else:
            return func(*args, **kwargs)
    return decorated_function
终止放荡 2022-09-13 06:30:08

jsonp需要服务端支持,并不是说用了jsonp就能把所有不支持跨域的请求变成可以跨域的。

风柔一江水 2022-09-13 06:30:08

你需要一个服务器环境,然后配置代理转发,你是用 vue-cli吗?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文