我有一个运行在localhost:3000上的react应用程序,我尝试使用Java ee后端REST服务器调用REST API,运行在localhost:8080上。我已经在头球上启用了CORS。
我试着在我的组件上做一个表单提交post请求。
fetchApi = () => {
const url = 'http://localhost:8080/test/api/rest/Service/checkCode';
var myHeaders = new Headers();
myHeaders.append('Access-Control-Allow-Origin', '*');
myHeaders.append('Access-Control-Allow-Headers', 'origin, content-type, accept, authorization');
myHeaders.append('Access-Control-Allow-Credentials', 'true');
myHeaders.append('Access-Control-Allow-Methods', ' GET, POST, PUT, DELETE, OPTIONS, HEAD');
myHeaders.append('Content-Type', 'application/json');
var myInit = {
method: 'POST',
headers: myHeaders,
mode: 'cors',
cache: 'default',
body: JSON.stringify({
code: '15465',
name: 'Jack',
})
};
fetch(url, myInit)
.then(function(response) {
if (response.ok) {
return response.json();
}
else{
throw new Error('Network response was not ok');
}
}).then(function(data){
console.log(data);
this.setState({items: data});
}).catch(function(error){
console.log('There has been a problem with your fetch operation: ' + error.message);
})
};
行中有错误:
fetch(url, myInit):
选项http://localhost:8080/test/api/rest/service/checkcode 500(Erreur Interne de Servlet)
和CORS错误:
提取API无法加载http://localhost:8080/test/API/rest/service/checkcode。对preflight请求的响应未通过访问控制检查:请求的资源上没有“access-control-allow-origin”标头。因此,不允许访问源“ttp://localhost:3000”。响应的HTTP状态代码为500。如果一个不透明的响应满足您的需要,请将请求的模式设置为“no-cors”以获取禁用CORS的资源。
这是一个后端问题,而不是一个前端,你应该允许CORS从后端,这取决于后端使用的技术,我在我的后端使用了spring boot,所以通过添加这段代码到安全配置将解决它
@Bean
CorsConfigurationSource corsConfigurationSource() {
CorsConfiguration configuration = new CorsConfiguration();
configuration.setAllowedOrigins(Arrays.asList("https://example.com"));
configuration.setAllowedMethods(Arrays.asList("GET","POST"));
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", configuration);
return source;
}
我在使用“创建反应应用程序”时遇到编译失败。我得到的信息如下。 __ ./src/App。未找到js模块:您试图导入/联系项目src/目录之外的内容。不支持src/之外的相对导入。您可以将其移动到src/内部,也可以从项目的节点_modules/向其添加符号链接。 __ 奇怪的是,我的src文件夹中肯定有“/联系人”文件,而消息说我没有。这是我的文件夹树。 这是我的应用程序。js代码。 感觉我在这
大家好,我第一次尝试启动我的react native项目,我已经安装了react native文档中提到的所有内容,以便在运行模拟器时使用android studio,并执行以下命令
当我试图使用命令运行create-react-app时,我收到以下消息 然后,我尝试使用全局卸载create-react-app,并再次运行npx命令。我仍然收到相同的消息,即我应该全局卸载create-react-app,即使如此,全局安装的唯一模块是我机器上的npm
我正努力让你去工作。以下是功能组件: 我称之为: 我得到一个错误,如下所示: 错误:无效的钩子调用。钩子只能在函数组件的主体内部调用。发生这种情况的原因如下:1。React和渲染器(如React DOM)2的版本可能不匹配。你可能违反了Hooks 3的规则。同一应用程序中可能有多个React副本。 我已经调试并确认我使用的是单一版本。也许我使用状态钩子不正确? 这里是我调用自定义钩子的地方:
我有一个简单的Java应用程序,我想用Jaeger测试跟踪,但遇到了错误。 Maven依赖- jaeger一体机- 这是代码- 我犯了个错误- 感谢任何帮助!