我想从dbpedia端点获取数据,在vue js中使用axios。
我使用axios.get
从dbpedia获取数据,我在控制台中得到一个错误消息:
类型错误:name.toUpperCase不是函数
我该怎么修呢?
created(){
this.fetch();
},
methods: {
fetch(){
axios
.get('http://id.dbpedia.org/sparql?query=SELECT+DISTINCT+?concept+WHERE+{+?s+a+?concept+}+LIMIT+50', {
headers: 'Access-Control-Allow-Origin: *'
}).then(response => {
/* eslint-disable */
console.log('SUCCESS');
console.log(response);
}).catch((e) => {
console.log(e);
})
}
},
4条答案
按热度按时间8yparm6h1#
您需要将Axios请求更改为:
五个变化:
1)使Axios
headers
成为对象(注意引号的位置)2)
console.log(response.data)
3)添加了
mode: 'cors'
4)为URL添加了
cors
前缀,因为您正在从托管环境之外的第三方域检索数据5)将您的
fetch
函数 Package 在async
await
中,因为axios是一个基于承诺的库。r1zk6ea12#
我在学习阶段也遇到过类似的问题,通过将标题设置为对象而不是字符串来解决:
enyaitl33#
对于上面的答案前提条件是你允许你的来源。要指定我有一个例子如下
mefy6pfw4#
对我来说,这是 Camel 案件的错误,在toUpperCase在js,请确保您看到它