Java 在Tomcat7 servlet中为post请求启用CORS
我使用Tomcat7在java动态web项目(EclipseEE)上运行servlet。 我已将以下段落(从)添加到我的web.xml文件中: 我不断得到以下错误代码: “无法加载XMLHttpRequest。对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“access control Allow Origin”标头。因此,不允许访问源“null”。响应的HTTP状态代码为403。” 我尝试了所有我能找到的解决方案,但没有任何帮助…请问有人能解决我的问题吗 您需要为CorsFilter添加“访问控制允许原点”值。现在Tomcat说,从您的来源,您无法访问这里。将此添加到CorsFilter配置:Java 在Tomcat7 servlet中为post请求启用CORS,java,angularjs,eclipse,tomcat,servlets,Java,Angularjs,Eclipse,Tomcat,Servlets,我使用Tomcat7在java动态web项目(EclipseEE)上运行servlet。 我已将以下段落(从)添加到我的web.xml文件中: 我不断得到以下错误代码: “无法加载XMLHttpRequest。对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“access control Allow Origin”标头。因此,不允许访问源“null”。响应的HTTP状态代码为403。” 我尝试了所有我能找到的解决方案,但没有任何帮助…请问有人能解决我的问题吗 您需要为CorsFilter
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
//add below config
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
克斯菲尔特
org.apache.catalina.filters.CorsFilter
//添加以下配置
科尔斯
*
克斯菲尔特
/*
因此,通过此配置,您可以确定允许从哪些域请求。您可以添加逗号分隔的域来访问您的资源,而不是*您可以添加逗号分隔的域。嗨,朋友们,仅将tomcat从版本7更新到版本8.5就解决了原始解决方案的问题
app.controller("LoginControler", function($scope,$rootScope,$http) {
$scope.submit = function () {
$rootScope.ret = "clicked";
var data = {
CompanyName: $scope.CompanyName,
UserName: $scope.UserName,
Password: $scope.Password,
};
$http.post(URL, data).success(function(data, status) {
$rootScope.ret = data;
})
}
});
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
//add below config
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>