其他分享
首页 > 其他分享> > 跨域访问及CrossOrigin注解的内容

跨域访问及CrossOrigin注解的内容

作者:互联网

@CrossOrigin注解

​ 含义:用于SpringMVC中处理跨域请求.(不同的域名之间的访问)

​ 注解支持的属性

属性类型是否必要说明
allowCredentialsString包含与请求的域相关的Cookie,使用时必须直指定具体的域
allowedHeadersString[]请求头中的请求列表
exposedHeadersString[]客户端允许访问的响应头列表
maxAgelong响应前的缓存最大有效时间,单位毫秒
methodsRequestMethod请求支持的方法,默认支持RequestMapping中设置的方法
originsString[]所有支持的集合,如果没有定义,默认支持所有域
valueString[]同origins属行一样

解决跨域问题(“在不同网页之间进行跨域请求”)

  1. 首先创建两个不同的项目在这里插入图片描述

  2. 发布网站至tomcat即不同端口(相同端口会导致端口占用)在这里插入图片描述在这里插入图片描述

![在这里插入图片描述](https://www.icode9.com/i/ll/?i=20210412161907428.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2MjI3MDQ2,size_16,color_FFFFFF,t_70#pic_cente

  1. 要实现跨域问题,则需要用到SpringMVC中的注解@CrossOrigin为了方便大家分析 我用了CrossTest为测试CrossOrigin的测试网站,用CrossOrigin为目标的网站

    1. 注意了:CrossTest的URL是http://localhost:8080/mv (这是发送端的网址)
      1. CrossOrigin的URL是http://localhost:8081/ (这是想要访问的网站)
  2. 那么我们开始吧

  3. 在测试端的index.jsp中的添加代码如下(通过链接进入跨域的CrossOrigin)

    <a href="http://localhost:8080/mv/CrossOriginTest/welcome">跨域</a>
    
  4. 好了 我们 可以需要访问的网站的控制层了(是CrossOrgin网站的控制层)在这里插入图片描述
    具体代码省略了,这是主要的代码)上面有个表格是标注的这个注解的属性

  5. 主要的代码是

    @CrossOrigin(origins = "http://localhost:8081")
    

    表示CrossOriginController控制器的所有方法可以处理来自"http://localhost:8081"域的请求

  6. 之后通过”welcome()“方法跳转”welcome.jsp“中

  7. 我的视图解析器放到这里了”WEB-INF/view/**.jsp“在这里插入图片描述

  8. 具体看这里

  9. 在这里插入图片描述

  10. welcom.jsp的内容我也copy一下给大家

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    Test is Successed!!!
    </body>
    </html>
    
  11. 好了大概就结束了!!!

    总结:发布两个不同的网站,在要被访问的网站设置@CrossOrigin注解,并允许另一个网站可以发送请求。

大概就结束了!!!

总结:发布两个不同的网站,在要被访问的网站设置@CrossOrigin注解,并允许另一个网站可以发送请求。

标签:CrossOrigin,请求,网站,访问,注解,跨域
来源: https://blog.csdn.net/m0_46227046/article/details/115627011