我对Vue不熟悉,但我试图从csgo附近的steam api获取一些细节。当我尝试引入数据时,它会在api url上显示 405(Method Not Allowed),并且对预检请求的响应也没有通过访问控制检查:否'访问控制允许来源'标头出现在请求的资源上。起源' http://127.0.0.1:8000'因此不允许访问。响应的HTTP状态代码为405。
我似乎无法解决这个问题,我尝试使用一些在线代理并在蒸汽api之前放置url但没有运气。
任何帮助将不胜感激!谢谢!
<template>
<div>
<ul v-if="posts && posts.length">
<li v-for="post of posts">
<p><strong>{{post.steamID}}</strong></p>
<p>{{post.stats}}</p>
</li>
</ul>
<ul v-if="errors && errors.length">
<li v-for="error of errors">
{{error.message}}
</li>
</ul>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
posts: [],
errors: []
}
},
// Fetches posts when the component is created.
created() {
axios.get(`http://api.steampowered.com/ISteamUserStats/GetUserStatsForGame/v0002/?appid=730&key=52828DE98A6C45A556BF4E5AF4F3CF1D&steamid=76561197980619010`)
.then(response => {
// JSON responses are automatically parsed.
this.posts = response.data
})
.catch(e => {
this.errors.push(e)
})
// async / await version (created() becomes async created())
//
// try {
// const response = await axios.get(`http://jsonplaceholder.typicode.com/posts`)
// this.posts = response.data
// } catch (e) {
// this.errors.push(e)
// }
}
}
</script>
答案 0 :(得分:0)
这是您的网络浏览器和网络服务器的一部分。
它基本上可以阻止恶意攻击,例如
my-innocent-blog.com
并且它有一个&#34;喜欢我的网站&#34;按钮my-innocent-blog.com
,它会告诉您的网络浏览器&#34;该请求应该仅来自我们自己的网站&#34;。从而保护您免受意外被欺骗删除帐户(或更糟)。
如果您使用的是ExpressJS服务器,请查看他们的CORS包。 https://github.com/expressjs/cors
否则,只需搜索&#34; CORS&#34;在谷歌上,你几乎可以找到所有东西。