Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java CORS政策';访问控制允许原点';(Anguar 8和Servlet)_Java_Angular_Servlets_Cors - Fatal编程技术网

Java CORS政策';访问控制允许原点';(Anguar 8和Servlet)

Java CORS政策';访问控制允许原点';(Anguar 8和Servlet),java,angular,servlets,cors,Java,Angular,Servlets,Cors,从Angular app向servlet doPost方法发出post请求时出错 角度应用程序对doGet方法和其他doPost方法提出2个请求1 在doGet方法中,我添加了如下heder resp.setHeader("Access-Control-Allow-Origin", "*"); resp.setHeader("Access-Control-Allow-Methods", "GET"); resp.setHeader("Access-Control-Max-Age", "3600"

从Angular app向servlet doPost方法发出post请求时出错

角度应用程序对doGet方法和其他doPost方法提出2个请求1

在doGet方法中,我添加了如下heder

resp.setHeader("Access-Control-Allow-Origin", "*");
resp.setHeader("Access-Control-Allow-Methods", "GET");
resp.setHeader("Access-Control-Max-Age", "3600");
resp.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
解决了我的CORS问题

但doPost方法给出了CORS错误,即使我在doPost方法中添加了相同的头

角度控制台显示

Access to XMLHttpRequest at 'http://localhost:8080/server/config' from origin 'http://localhost:4200' has been blocked by CORS policy.Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
服务器是用servlet编写的,在端口8080上运行。 前端以角度8写入,并在端口4200上运行

如何解决post呼叫的CORS错误


谢谢..

在您的代码中,仅允许GET方法。更新您的代码,如:

resp.setHeader("Access-Control-Allow-Methods", "POST,GET,PUT,OPTIONS,DELETE");


谢谢你的回答。但通过实现定制CORS过滤器,问题得到了解决。。当然解决这个问题的方法很多。但关键是“setHeader”(“访问控制允许方法”、“POST、GET、PUT、OPTIONS、DELETE”)