-
Notifications
You must be signed in to change notification settings - Fork 5
Home
xndxcsd edited this page Apr 28, 2016
·
10 revisions
我们有很多独立的功能模块:
- 成绩查询模块
- 课表查询模块
- 失物招领模块
- 图书馆信息查询模块
- swu-wifi功能模块
- 校园卡功能模块
无论是部署本项目为他人提供服务,还是调用它,也许都应该完成最起码的认证.因此我们实现了一个满足Basic方式的认证,调用的方式非常简单:
@path("/myresource")
public class MyResource(){
private SecurityFilter filter;
@context
ContainerRequest cr;
@GET
public String getIt(){
filter.filter(cr);
return "got it";
}
}
如上所示,使用者可以调用SecurityFilter
的对象的filter()
方法来实现一个Basic方式的认证。该方法需要传入一个ContainerRequest
的对象,我们可以通过@context
注解来注入,如上代码所示。
认证的用户名和密码在SecurityFilter
类中很显眼的位置设置,使用者可以随意修改。非常显然,如果服务器设置了认证,想要调用以上功能模块的API,Basic认证在每一次请求中都是必不可少的。