我们面临着与angular 6有关的一些新问题,我们的项目是在带有oAuth 2.0后端弹簧启动的angular 6中开发的。最初,当我们部署应用程序并在浏览器中打开页面时,一切似乎都很好,但是经过一段时间的空闲时间(保持页面空闲)之后,没有任何操作,并在一段时间后执行了一些操作,在调用任何POST方法之前,angular正在调用OPTIONS方法,在调用OPTIONS方法时,远程地址将更改为本地IP,在此我们部署Angular代码而不是Rest Services IP,并且仅在空闲时间后才会收到CROS问题。如果有人在您的项目中遇到此问题,请帮助我解决它。enter image description here
答案 0 :(得分:0)
我们找到了解决方案,问题出在Angular JS,所以PWA(渐进式Web应用程序)将创建一个线程,并且该应用程序将在该线程上运行。因此,每个请求都首先从缓存中提取数据,然后向后端发送一个请求。因此我们需要停止req以从Cache中获取数据,然后直接从后端提取数据。
因此需要对ngsw.json进行角度配置,这里有一个名为dataGroups的部分,在这里我们需要使用“ strategy”:“ freshness”代替performance()
“数据组”:[{ “ name”:“ api-freshness”, “网址”:[ ], “ cacheConfig”:{ “ maxSize”:100, “ maxAge”:“ 1h”, “ timeout”:“ 10s”, “ strategy”:“新鲜” } },{ “ name”:“ api-performance”, “网址”:[ “ /”, //不缓存 “ / home”, //不缓存 “ / snack” //不缓存 ], “ cacheConfig”:{ “ maxSize”:100, “ maxAge”:“ 1h”, “ strategy”:“表现” } }]