我使用React和Express的同构JavaScript应用程序遇到问题。
我正在尝试在组件装入时使用axios.get发出HTTP请求
componentDidMount() {
const url = 'http://ufc-data-api.ufc.com/api/v3/iphone/fighters/title_holders';
axios.get(url).then( res => {
//use res to update current state
})
}
我从API获取状态为200 res,但是没有收到任何响应数据并且控制台中出现错误
XMLHttpRequest cannot load http://ufc-data-api.ufc.com/api/v3/iphone/fighters/title_holders.
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://localhost:3000' is therefore not allowed access.
但是,如果我在server.js中发出请求
const url = 'http://ufc-data-api.ufc.com/api/v3/iphone/fighters/title_holders';
axios.get(url).then(res => {
//console.log(res);
});
它工作正常,服务器启动时我得到响应数据。这是实际API的问题,还是我做错了什么?如果这是一个CORS问题,我猜server.js中的请求也不起作用?谢谢!
CORS是 浏览器
功能。服务器需要选择加入CORS,以允许浏览器绕过同源策略。您的服务器将没有相同的限制,并且能够使用公共API向任何服务器发出请求。https://developer.mozilla.org/zh-
CN/docs/Web/HTTP/Access_control_CORS
在启用了CORS的服务器上创建可以充当Web应用程序代理的终结点。
Access-Control-Allow-Origin响应 header 指示是否该响应可以与具有给定资源共享原点。 Header type Response header Forbidden header name no 语法 Access-Control-Allow-Origin: *Access-Control-Allow-Origin: <origin> 指令 * 对于没有凭据的请求,服务
问题内容: 我正在尝试使用以下代码获取我的instagram feed 我得到的错误是 所请求的资源上没有“ Access-Control-Allow-Origin”标头。 有没有解决的办法? 问题答案: Instagram API支持,因此添加到url并添加到调用中,如下所示:
XMLHttpRequest无法加载http://localhost:8080/nobelgrid/api/users/create/。请求的资源上没有“访问-控制-允许-来源”标头。因此,不允许访问源'http://localhost:63342'。响应的HTTP状态代码为500。 谁能帮帮我吗? 更新: 但我还有一个错误。我会做另一个问题,因为我认为这是一个不同的论点。 提前感谢!
问题内容: 这可能是一个简单的(一系列)问题,但我无法解决。 我正在尝试从托管在我网站上的Web应用程序访问github api。简而言之,这是代码: 如果我将浏览器指向在我的保管箱帐户上载的这个简单页面,则一切正常。相反,如果我将浏览器指向该网站上上传的这个简单页面,则会得到臭名昭著的异常: 因此,问题是: 为什么在Dropbox上可以使用? 我了解使用CORS即使在网站上也可以使用。这是我的A
问题内容: 我正在为基于Django的应用程序开发Phonegap应用程序,但是在尝试进行Ajax调用时出现此错误: 我如何才能做到这一点,以便我的Django应用程序允许某些URL的交叉源? 这是我的Ajax代码: 问题答案: Django默认情况下不提供提供交叉原点所必需的标头。最简单的方法是只使用为您处理该Django应用程序:https : //github.com/ottoyiu/dja
RESTful WebService是用Java构建的。这里有方法,该方法获取对象,并在中返回该对象: 我必须做什么才能成功地从Angular 6客户机调用Java RESTful WebService?