Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
爱吃血肠
spring-framework
提交
60eb9e9c
S
spring-framework
项目概览
爱吃血肠
/
spring-framework
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
spring-framework
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
60eb9e9c
编写于
5月 31, 2015
作者:
S
Sam Brannen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Introduce 'value' alias for 'origin' in @CrossOrigin
Issue: SPR-11393
上级
f0c08130
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
29 addition
and
3 deletion
+29
-3
spring-web/src/main/java/org/springframework/web/bind/annotation/CrossOrigin.java
.../org/springframework/web/bind/annotation/CrossOrigin.java
+12
-2
spring-webmvc/src/test/java/org/springframework/web/servlet/mvc/method/annotation/CrossOriginTests.java
...k/web/servlet/mvc/method/annotation/CrossOriginTests.java
+17
-1
未找到文件。
spring-web/src/main/java/org/springframework/web/bind/annotation/CrossOrigin.java
浏览文件 @
60eb9e9c
...
...
@@ -22,6 +22,8 @@ import java.lang.annotation.Retention;
import
java.lang.annotation.RetentionPolicy
;
import
java.lang.annotation.Target
;
import
org.springframework.core.annotation.AliasFor
;
/**
* Marks the annotated method or type as permitting cross origin requests.
*
...
...
@@ -37,13 +39,21 @@ import java.lang.annotation.Target;
@Documented
public
@interface
CrossOrigin
{
/**
* Alias for {@link #origin}.
*/
@AliasFor
(
attribute
=
"origin"
)
String
[]
value
()
default
{
"*"
};
/**
* List of allowed origins.
* <p>These values are placed in the {@code Access-Control-Allow-Origin}
* header of both the pre-flight response and the actual response.
* <p>Defaults to {@code "*"} which means that all origins are allowed.
* @see #value
*/
String
[]
origin
()
default
{
"*"
};
@AliasFor
(
attribute
=
"value"
)
String
[]
origin
()
default
{
"*"
};
/**
* List of request headers that can be used during the actual request.
...
...
@@ -52,7 +62,7 @@ public @interface CrossOrigin {
* <p>Defaults to {@code "*"} which means that all headers requested
* by the client are allowed.
*/
String
[]
allowedHeaders
()
default
{
"*"
};
String
[]
allowedHeaders
()
default
{
"*"
};
/**
* List of response headers that the user-agent will allow the client to access.
...
...
spring-webmvc/src/test/java/org/springframework/web/servlet/mvc/method/annotation/CrossOriginTests.java
浏览文件 @
60eb9e9c
...
...
@@ -17,6 +17,7 @@
package
org.springframework.web.servlet.mvc.method.annotation
;
import
java.lang.reflect.Method
;
import
java.util.Arrays
;
import
org.junit.Before
;
import
org.junit.Rule
;
...
...
@@ -128,7 +129,17 @@ public class CrossOriginTests {
assertArrayEquals
(
new
String
[]{
"header1"
,
"header2"
},
config
.
getAllowedHeaders
().
toArray
());
assertArrayEquals
(
new
String
[]{
"header3"
,
"header4"
},
config
.
getExposedHeaders
().
toArray
());
assertEquals
(
new
Long
(
123
),
config
.
getMaxAge
());
assertEquals
(
false
,
config
.
getAllowCredentials
());
assertFalse
(
config
.
getAllowCredentials
());
}
@Test
public
void
customOriginDefinedViaValueAttribute
()
throws
Exception
{
this
.
handlerMapping
.
registerHandler
(
new
MethodLevelController
());
this
.
request
.
setRequestURI
(
"/customOrigin"
);
CorsConfiguration
config
=
getCorsConfiguration
(
this
.
handlerMapping
.
getHandler
(
request
),
false
);
assertNotNull
(
config
);
assertEquals
(
Arrays
.
asList
(
"http://example.com"
),
config
.
getAllowedOrigins
());
assertTrue
(
config
.
getAllowCredentials
());
}
@Test
...
...
@@ -279,6 +290,11 @@ public class CrossOriginTests {
@RequestMapping
(
path
=
"/customized"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
})
public
void
customized
()
{
}
@CrossOrigin
(
"http://example.com"
)
@RequestMapping
(
"/customOrigin"
)
public
void
customOriginDefinedViaValueAttribute
()
{
}
}
@Controller
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录