使用Spring loginUrlAuthenticationEntryPoint

我有一个带有Spring Boot的Web应用程序,它旁边使用loginUrlAuthenticationEntryPoint和Restful服务。该应用程序服务到一个使用百里香叶(通过会话进行身份验证)的网页以及一个使用基本身份验证的移动应用程序,因此有一个购物车餐馆页面中的项目屏幕(html表),我想通过异步单击从数据库中删除这些项目。但是该页面的安全性(页面url)由login-url-auth-entry-point处理,而不是rest auth安全性配置。
因此,当我进行ajax调用以删除购物车商品网址时,它将返回302。我的ajax调用未进行身份验证,并尝试将我重定向到登录页面。我尝试了很多事情。
我尝试在ajax调用中使用xhrFields {withCredentials:true},但没有用。
我尝试将设置授权字段与document.cookie一起使用-document.cookie返回空。
我正在尝试发送请求的控制器:

    @ResponseBody
    @PreAuthorize("hasRole('RESTAURANT') OR hasRole('ADMIN')")
    @GetMapping("/flushitem/{id}")
    public ResponseEntity<String> freeCartItem(@PathVariable("id") Long id) {
        try {
            cartService.deleteCart(id);
        }catch(Exception e) {
            e.printStackTrace();
        }
        return new ResponseEntity<>(HttpStatus.OK);
    }

我还尝试删除@ResponseBody注释并使用带有html链接标签的百里香的th:href进行请求,即使我的控制器返回void,它也会尝试重定向到某个地方。 长话短说,我的问题是,我应该如何在通过会话进行身份验证的网页中进行ajax调用?或者我可以不使用ajax和rest控制器功能就能实现所需的功能?

  

我不愿意做任何与cors相关的操作。(我想)

Asongze123456789 回答:使用Spring loginUrlAuthenticationEntryPoint

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3151403.html

大家都在问