【发布时间】:2018-05-20 02:47:22
【问题描述】:
我在做一个小项目。服务器端在 Python 上实现为 RESTFul 服务器。我尝试用 Vue 做前端。我是 Vue 的新手。当我尝试从服务中获取数据时,我得到错误:网络错误。而且我找不到错误。
具有讽刺意味的是,我在网络->响应选项卡中的浏览器中看到了获取的数据。但不在 HTML 页面上。在页面上,我只看到 错误:网络错误。
我可以通过 url 直接用浏览器获取数据。 我可以用 CURL 获取数据 我也可以使用这个 Vue 代码从第三方服务中获取数据!但不是来自本地 URL。
烧瓶服务器代码
@app.route('/', methods=['GET'])
def get_data_list():
return 'Test'
VUE 代码
var app = new Vue({
el: '#app',
data: {
data_list: '...',
url_A: "#home",
url_B: '#page2',
url_C: '#settings'
},
created: function () {
this.loadData()
},
methods:
{
loadData: function () {
this.data_list = "Loading...."
var app = this
axios.get('http://127.0.0.1:5000/')
.then(function (response) {
app.data_list = response.data[0]
})
.catch(function (error) {
app.data_list = "An error occurred. "+error+" / Error ststus: "+error.response
})
}
}
})
我有点困惑。我的代码有什么问题?
【问题讨论】:
-
检查控制台上的网络标签
-
控制台很干净。本地服务器日志:127.0.0.1 - - [06/Dec/2017 11:19:20] "GET / HTTP/1.1" 200 -
-
@samayo,对不起。我发现消息:“跨域请求被阻止:同源策略不允许读取127.0.0.1:5000 的远程资源。(原因:CORS 标头‘Access-Control-Allow-Origin’缺失)。”
标签: python-3.x flask vue.js flask-restful