以前都是自己一个人写东西,建一个web项目然后刷刷刷的写,前端部分也自己刷刷刷的写,从来没碰到过跨域问题,最近公司项目,前后端分离,我写好接口给前端的老哥,发现用ajax怎么请求都没有用,每次都是说什么请求头的问题,把请求头删掉,没报错了,但是什么信息都不来,前面一直以为是前端的代码有问题,后面才知道是跨域,大爷的,然后网上搜,全是什么反向代理巴啦啦的,我他妈又不知道这东西怎么玩,我就一安卓,写前端那老哥也是安卓,两安卓在这写这鸡儿,我个后端只会用数据库框架,其他什么spring全家桶都不会,他大爷神烦,只会用servlet,然后我就找找找总算被我找到了就一行代码,解决前后端跨域。。。。去你妈的反向代理。
Response.setHeader("Access-Control-Allow-Origin", "*");
没错就是这句,加上这句前端请求接口,正常。
后面帮苦逼的写前端的安卓老哥写前端逻辑,碰到访问本地图片访问不了,又冒出个鬼跨域。。。当时就想打人,然后我只能把图片放后端,使用io流…加上上面那句代码,ok完美解决。
public class ImageGetApi extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setHeader("Access-Control-Allow-Origin", "*");
InputStream in=this.getServletContext().getResourceAsStream("/img/car.png");
byte buffer[]=new byte[1024];//设置缓冲区
int len=0;
try {
OutputStream out=resp.getOutputStream();
while((len=in.read(buffer))>0){
out.write(buffer,0,len);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
去你妈的臭嗨