我试图通过前端从后端请求数据,但我得到了错误:
Access to XMLHttpRequest at 'http://localhost:8081/api/transactions/' from origin 'http://localhost:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
我可以用邮递员获取数据,但不能用我的前端。我正在使用angular和spring Boot。
我的application.java:
@EnableJpaRepositories
@EntityScan
@SpringBootApplication
public class KoalaTreeAccountingApplication {
public static void main(String[] args) {
SpringApplication.run(KoalaTreeAccountingApplication.class, args);
}
}
我的安全配置:
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.anyRequest()
.permitAll()
.and().csrf().disable();
}
}
我的服务以Angular方式进行http调用:
@Injectable({
providedIn: 'root'
})
export class TransactionService {
baseUrl = 'http://localhost:8081/api/';
transactionUrl = this.baseUrl + 'transactions/';
constructor(private http: HttpClient, private logger : Logger){ }
getAllTransactions() : Observable<Transaction[]> {
this.logger.log("Request all transactions");
return this.http.get<Transaction[]>(this.transactionUrl);
}
getTransactionById(id : number) : Observable<Transaction> {
this.logger.log("Request transaction " + id);
return this.http.get<Transaction>(this.transactionUrl + id);
}
}
编辑:我已尝试
https://Spring.io/guides/gs/rest-service-cors/
Spring Security CORS filter不工作
Spring-boot安全配置
https://stackoverflow.com/A/31748398/12025088
通过使用这个而不是securityconfig.java修正:
@Component
public class SimpleCORSFilter implements Filter {
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");
response.setHeader("Access-Control-Max-Age", "36000");
response.setHeader("Access-Control-Allow-Headers", "origin, content-type, accept");
chain.doFilter(req, res);
}
public void init(FilterConfig filterConfig) {
}
public void destroy() {
}
}
您需要添加一个bean来配置cors并在安全配置中启用cors
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(final CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("*")
.allowedHeaders("*")
.allowCredentials(true).maxAge(3600);
}
};
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.anyRequest()
.permitAll()
.and().cors().and().csrf().disable();
}
我创建自定义插件,我有表wp_customers,我试图选择我表中的所有东西,但wordpress只是显示给我致命错误:未捕获错误:调用成员函数get_results()在C:\xampp\htdocs\wordpress\wordpress\wp-内容\plugins\rflreway\Public\show R中为空esult.php:4堆栈跟踪:#0{main}在第4行的C:\xampp\h
我有ASP。NET核心API及其在Angular 5中的应用。我在启动中添加了代码。cs启用cors并允许所有来源,但它仍然给了我一个错误 请求的资源上不存在“Access Control Allow Origin”标头。起源'http://localhost:4200因此,不允许访问。响应的HTTP状态代码为500。 下面是我的web api代码:
我目前正在使用yahoo weather api获取天气数据。我正在犯错误。请帮忙。 获取在'https://weather-ydn-yql.media.yahoo.com/forecastrss?location=sunnyvale, ca 我试图做谷歌,但没有一个解决方案为我工作
事实上,我在拉威尔是个新手,我正试图创建我的第一个项目。由于某些原因,我一直遇到这个错误(我甚至还没有开始编码) 我读到这与权限有关,但是chmod-R 775存储没有任何帮助。
我是Java的新手,尤其是Java的面向对象编程,我一直收到这个让我发疯的错误。 以下是我的员工超类的一部分: 以及子类CommissionEmployee: 我得到的相同错误是: 这到底是什么意思,是什么原因导致的,我如何修复它?
尝试在android上构建带有react-navigation的react-native v0.61.5应用程序时遇到此错误。iOS运行良好,不知道为什么我会得到这个index.android文件错误,因为我认为react-native将索引文件合并到singular < code > index . js 作为入口点。 这是全部错误: 加载依赖图,完成。错误:无法解析模块<代码>。``中的/in