Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
zlt2000
microservices-platform
提交
6a87bf8c
microservices-platform
项目概览
zlt2000
/
microservices-platform
8 个月 前同步成功
通知
16
Star
4
Fork
3
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
microservices-platform
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
6a87bf8c
编写于
6月 05, 2022
作者:
Z
zhult13
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加webSocket鉴权样例工程:websocket-demo
上级
c4146ef7
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
193 addition
and
1 deletion
+193
-1
zlt-commons/zlt-auth-client-spring-boot-starter/src/main/java/com/central/oauth2/common/util/AuthUtils.java
...c/main/java/com/central/oauth2/common/util/AuthUtils.java
+1
-1
zlt-demo/websocket-demo/README.md
zlt-demo/websocket-demo/README.md
+39
-0
zlt-demo/websocket-demo/pom.xml
zlt-demo/websocket-demo/pom.xml
+51
-0
zlt-demo/websocket-demo/src/main/java/org/zlt/WebSocketApp.java
...mo/websocket-demo/src/main/java/org/zlt/WebSocketApp.java
+18
-0
zlt-demo/websocket-demo/src/main/java/org/zlt/config/MyResourceConfig.java
...t-demo/src/main/java/org/zlt/config/MyResourceConfig.java
+20
-0
zlt-demo/websocket-demo/src/main/java/org/zlt/config/WebSocketConfig.java
...et-demo/src/main/java/org/zlt/config/WebSocketConfig.java
+23
-0
zlt-demo/websocket-demo/src/main/java/org/zlt/controller/TestWebSocketController.java
...main/java/org/zlt/controller/TestWebSocketController.java
+27
-0
zlt-demo/websocket-demo/src/main/resources/bootstrap.yml
zlt-demo/websocket-demo/src/main/resources/bootstrap.yml
+14
-0
未找到文件。
zlt-commons/zlt-auth-client-spring-boot-starter/src/main/java/com/central/oauth2/common/util/AuthUtils.java
浏览文件 @
6a87bf8c
...
...
@@ -74,7 +74,7 @@ public class AuthUtils {
* 校验accessToken
*/
public
static
void
checkAccessToken
(
HttpServletRequest
request
)
{
String
accessToken
=
extract
Header
Token
(
request
);
String
accessToken
=
extractToken
(
request
);
checkAccessToken
(
accessToken
);
}
...
...
zlt-demo/websocket-demo/README.md
0 → 100644
浏览文件 @
6a87bf8c
## 代码说明
-
[
SpringBoot的WebSocket接口如何实现鉴权?
](
https://www.kancloud.cn/zlt2000/microservices-platform/2278851
)
## 启动以下服务
1.
zlt-uaa:统一认证中心
2.
user-center:用户服务
3.
sc-gateway:api网关
4.
websocket-demo
> 环境配置与启动参考文档:https://www.kancloud.cn/zlt2000/microservices-platform/919418
## 获取access_token
可使用任意授权模式获取;
例如:密码模式授权
-
请求方式:POST
-
请求头:Authorization:Basic d2ViQXBwOndlYkFwcA==
-
请求地址:http://localhost:9900/api-uaa/oauth/token?grant_type=password&username=admin&password=admin
> 授权接口清单参考文档:https://www.kancloud.cn/zlt2000/microservices-platform/1158135
## 测试步骤
使用
`Postman`
进行测试(最新版本支持 webSocket 接口)
点击
`New`
按钮,选择
`WebSocket Request`
;
在
`URL`
中输入
`ws://localhost:8092/websocket/test`
在
`Headers`
中添加:
`Authorization:Bearer xxx`
或者
在
`参数`
中添加:
`ws://localhost:8092/websocket/test?access_token=xxx`
> xxx 需替换为正确的 access_token
\ No newline at end of file
zlt-demo/websocket-demo/pom.xml
0 → 100644
浏览文件 @
6a87bf8c
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0.0
</modelVersion>
<parent>
<groupId>
com.zlt
</groupId>
<artifactId>
zlt-demo
</artifactId>
<version>
5.3.0
</version>
</parent>
<artifactId>
websocket-demo
</artifactId>
<dependencies>
<dependency>
<groupId>
com.zlt
</groupId>
<artifactId>
zlt-config
</artifactId>
</dependency>
<dependency>
<groupId>
com.zlt
</groupId>
<artifactId>
zlt-auth-client-spring-boot-starter
</artifactId>
</dependency>
<dependency>
<groupId>
com.zlt
</groupId>
<artifactId>
zlt-redis-spring-boot-starter
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-websocket
</artifactId>
</dependency>
<dependency>
<groupId>
com.baomidou
</groupId>
<artifactId>
mybatis-plus-extension
</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
<executions>
<execution>
<goals>
<goal>
repackage
</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
zlt-demo/websocket-demo/src/main/java/org/zlt/WebSocketApp.java
0 → 100644
浏览文件 @
6a87bf8c
package
org.zlt
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
/**
* @author zlt
* @date 2022/5/8
* <p>
* Blog: https://zlt2000.gitee.io
* Github: https://github.com/zlt2000
*/
@SpringBootApplication
public
class
WebSocketApp
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
WebSocketApp
.
class
,
args
);
}
}
zlt-demo/websocket-demo/src/main/java/org/zlt/config/MyResourceConfig.java
0 → 100644
浏览文件 @
6a87bf8c
package
org.zlt.config
;
import
com.central.oauth2.common.config.DefaultResourceServerConf
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer
;
/**
* security资源服务器配置
*
* @author zlt
* @version 1.0
* @date 2022/5/9
* <p>
* Blog: https://zlt2000.gitee.io
* Github: https://github.com/zlt2000
*/
@Configuration
@EnableResourceServer
public
class
MyResourceConfig
extends
DefaultResourceServerConf
{
}
zlt-demo/websocket-demo/src/main/java/org/zlt/config/WebSocketConfig.java
0 → 100644
浏览文件 @
6a87bf8c
package
org.zlt.config
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.web.socket.server.standard.ServerEndpointExporter
;
/**
* WebSocket配置
*
* @author zlt
* @version 1.0
* @date 2022/5/8
* <p>
* Blog: https://zlt2000.gitee.io
* Github: https://github.com/zlt2000
*/
@Configuration
public
class
WebSocketConfig
{
@Bean
public
ServerEndpointExporter
serverEndpointExporter
()
{
return
new
ServerEndpointExporter
();
}
}
zlt-demo/websocket-demo/src/main/java/org/zlt/controller/TestWebSocketController.java
0 → 100644
浏览文件 @
6a87bf8c
package
org.zlt.controller
;
import
com.central.oauth2.common.config.WcAuthConfigurator
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Component
;
import
javax.websocket.OnOpen
;
import
javax.websocket.Session
;
import
javax.websocket.server.ServerEndpoint
;
import
java.io.IOException
;
/**
* @author zlt
* @date 2022/5/8
* <p>
* Blog: https://zlt2000.gitee.io
* Github: https://github.com/zlt2000
*/
@Slf4j
@Component
@ServerEndpoint
(
value
=
"/websocket/test"
,
configurator
=
WcAuthConfigurator
.
class
)
public
class
TestWebSocketController
{
@OnOpen
public
void
onOpen
(
Session
session
)
throws
IOException
{
session
.
getBasicRemote
().
sendText
(
"TestWebSocketController-ok"
);
}
}
zlt-demo/websocket-demo/src/main/resources/bootstrap.yml
0 → 100644
浏览文件 @
6a87bf8c
server
:
port
:
8092
spring
:
application
:
name
:
zlt-websocket
main
:
allow-bean-definition-overriding
:
true
zlt
:
security
:
ignore
:
httpUrls
:
>
/websocket/**
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录