6 个内容
Vite开发服务器中,`server.middlewares.use`将中间件置于末尾,易被内置中间件(如静态资源、SPA fallback)优先拦截,导致API请求(如`/api/auto-icon`)或OPTIONS预检失败。**方案**:使用`server.middlewares.stack.unshift({route:'',handle})`抢占首位,确保CORS头响应及路径精确匹配,特别适用于Vite 7+ SSR场景。(148字符)
Nginx默认追加同名响应头导致浏览器报错,如多个`Access-Control-Allow-Origin`。解决方案包括:1) 使用`always`强制覆盖;2) 使用`proxy_hide_header`清除后端同名header再添加;3) 使用`more_clear_headers` (需安装模块) 清除和设置。推荐方案是清除后端header并使用`always`添加。
本周报记录了作者遇到的技术问题及解决方案。包括:Chrome 扩展快捷键设置、JSON Schema 配置、Service Worker 跨域处理(通过拦截 fetch 请求)、graphql-request 类型问题、nginx gzip 默认行为、micro-app 微前端样式污染(通过 shadowDOM 解决)以及 react-markdown 链接解析问题。
本文总结了前端开发中遇到的多个疑难杂症。包括Safari图片替换闪烁、懒加载失效,企业微信登陆异常(C盘满导致),`Vary: Origin` 跨域问题,SSR时区不一致,`white-space: pre` 与 innerHtml 冲突,`scrollIntoView`在`overflow: hidden`容器中的BUG,以及判断滚动到底部时因精度问题可能出现的误差。针对性地给出了问题原因和解决方案。
背景:CDN 上的字体文件在不同域名站点引用时出现跨域问题。 问题:浏览器对相同 URL 的跨域资源,未按 Origin 区分缓存,导致缓存错乱。 方案:虽然`Vary: Origin`是正解,但最终采用设置 `Access-Control-Allow-Origin: *` 解决跨域问题。
本文介绍了跨域资源共享(CORS)的原理和解决方案。重点区分简单请求和复杂请求,详细解释了预检请求及相关头部信息。同时提到了JSONP、代理服务器等其他跨域方法,以及超链接download属性的使用限制。