由于业务需要开启跨域请求,在FastChar中,可以非常简单的配置参数就可以开启了,如下代码:
public class TestWeb implements IFastWeb { @Override
public void onInit(FastEngine engine) throws Exception {
/**省略其他配置代码**/
engine.getConstant()
.setCrossDomain(true);//开启跨域
} /**省略其他配置代码**/ }
也可以指定某个路由允许跨域,如下代码:
public class TestAction extends FastAction {
@Override
protected String getRoute() {
return "/test";
}
/**省略其他代码**/
@AFastRoute(cross = true)//通过注解开启或关闭跨域
public void login() {
String loginName = getParam("loginName", true);
String password = getParam("password", true);
if (loginName.equals("admin") && password.equals("123456")) {
responseJson(0, "登录成功!");
}
responseJson(-1, "登录失败!");
}
}
由于跨域需要指定允许跨域的请求头信息,所以FastChar默认支持跨域的请求头信息如下:
//系统默认配置的请求头信息 constant.addCrossHeaders("Content-Type", "Access-Control-Allow-Headers", "Authorization", "X-Requested-With", "token");
也可以自己添加头部信息,如下代码:
public class TestWeb implements IFastWeb { @Override
public void onInit(FastEngine engine) throws Exception {
/**省略其他配置代码**/
engine.getConstant() .addCrossHeaders("header1", "header2");//添加允许跨域的请求头信息
.setCrossDomain(true);//开启跨域
} /**省略其他配置代码**/ }