![](/img/trans.png)
[英]How do I set up WordPress and WooCommerce API so that I won't get CORS error when posting?
[英]How do I prevent a CORS policy error when posting from JS UI to Java API
我的前端應用程序給出了這個錯誤:
CORS 策略已阻止從源“http://localhost:3000”訪問“http://localhost:9025/customer/registerDocs/”處的 XMLHttpRequest:確實如此沒有 HTTP 正常狀態。
當這被稱為:
updateDocsStatus() {
return ApiService.postData('http://localhost:9025/customer/registerDocs');
}
這是API中的controller方法:
@PostMapping(value = Constants.REGISTER_DOCS_PATH,
consumes = {MediaType.APPLICATION_JSON_VALUE},
produces = {MediaType.APPLICATION_JSON_VALUE})
@ResponseStatus(HttpStatus.OK)
public void registerUserForDocs(HttpServletRequest request){
String username = securityService.getUsername(request);
customerHelper.registerCustomerForEdocs(username);
}
我不禁覺得問題出在前端。 我在這里遺漏了什么明顯的東西嗎?
這就是我使用的,可能最好將其與特定的開發配置文件一起使用
@Configuration
public class CorsConfiguration implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/api/**")
.allowedMethods("*")
.allowedOrigins("http://localhost:3000")
.allowedHeaders("*");
}
}
如果您使用 Spring 安全性,則可以通過添加以下 bean 為所有路徑禁用 CORS(不是最佳實踐)
@Configuration
public class WebConfiguration implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**").allowedMethods("*");
}
}
或者您可以微調到 POST 方法和您的特定文檔路徑 (customer/registerDocs)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.