公司项目,qiankun集成有跨域问题,处理方案
location /icas-service/ {
proxy_pass http://ibu-ifsp-core-cbsg-apigw-apis.int.os-sgp-sit.local:1080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
# add_header 'Access-Control-Expose-Headers' 'Content-Disposition,Content-Length,Content-Type,Date,Server';
# add_header 'Access-Control-Allow-Headers' '$http_access_control_request_headers';
add_header Access-Control-Allow-Headers 'lang,token,timezone,user_agent_type,user_country,user_lang,traceId,syscode,sysCode,Cookie,content-type';
# add_header 'Access-Control-Allow-Headers', 'token, Origin, syscode, Content-Type, Accept, Authorization, lang, timezone, traceid, user_agent_type, user_country, user_lang' ;
# add_header Access-Control-Allow-Origin * always; #这里不要加,加下面就够了
# 如果是预检请求(OPTIONS请求),直接返回204响应,最重要是这里
if ($request_method = OPTIONS) {
add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
add_header Access-Control-Allow-Headers 'lang,token,timezone,user_agent_type,user_country,user_lang,traceId,syscode,sysCode,Cookie,content-type'; #要增加每个头的支持,否则跨域
add_header 'Access-Control-Allow-Credentials' 'true' always;
add_header Access-Control-Allow-Origin * always; #这里要加,上面不用加
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Length' 0;
add_header 'Content-Type' 'text/plain charset=UTF-8';
return 204;
}
}