Solon 的跨域处理,由 solon.extend.cors 插件提供支持。在 solon-web 快速集成开发包内已包含。主要有三种使用方式。
1、加在控制器上,或方法上
@CrossOrigin(origins = "*")
@Controller
public class Demo1Controller {
@Mapping("/hello")
public String hello() {
return "hello";
}
}
@Controller
public class Demo2Controller {
@CrossOrigin(origins = "*")
@Mapping("/hello")
public String hello() {
return "hello";
}
}
2、加在控制器基类
@CrossOrigin(origins = "*")
public class BaseController {
}
@Controller
public class Demo3Controller extends BaseController{
@Mapping("/hello")
public String hello() {
return "hello";
}
}
3、全局加在应用上
public class App {
public static void main(String[] args) {
SolonApp app = Solon.start(App.class, args);
//增加全局处理
app.before(new CrossHandler().allowOrigin("*"));
//或者增某段路径的处理
app.before("/user/**", new CrossHandler().allowOrigin("*"));
}
}