webflux接收application/x-www-form-urlencoded参数

记录开发中遇到的问题

请求方式:

需要用如下方式接收:

方式1

java 复制代码
    @PostMapping(value = "/user/logout", consumes = "application/x-www-form-urlencoded")
    public ResponseResult logoutForAuthSystem(ServerWebExchange exchange) {
        exchange.getFormData().subscribe(formData -> {
            String sub = formData.getFirst("sub");
            String name = formData.getFirst("name");

            log.info("[第三方认证系统] 登出,用户ID {}, 账号 {}", sub, name);
            tokenService.deleteUserCache(name);
        });
        return ResponseResult.ok("登出成功");
    }

方式2

java 复制代码
@PostMapping("/user/logout")
    public void refreshSysConfig(ServerHttpRequest request) {
        // 直接解析 form 表单
        request.getBody().subscribe(buffer -> {
            String bodyStr = buffer.toString(StandardCharsets.UTF_8);
            String name = bodyStr.replace("name=", "").trim();
            System.out.println("成功拿到:" + name);
        });
    }
相关推荐
Chester_19996 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
EXI-小洲7 小时前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
会周易的程序员8 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
机器视觉知识推荐、就业指导8 小时前
为什么老说“纯 Qt 没啥就业市场”?
开发语言·qt
telepan8 小时前
Qt 开发避坑与性能指南:如何优雅、安全地定义全局常量字符串?
开发语言·qt
m0_695251498 小时前
Qt MaintenanceTool 使用国内镜像加速下载(超详细教程)
开发语言·qt
2601_961901708 小时前
SpringBoot使用Nacos进行application.yml配置管理
java·spring boot·spring
何以解忧,唯有..9 小时前
LangChain 工具调用(Tool Calling)实战指南
java·前端·langchain
大衛說9 小时前
《Python 从入门到精通》系列总览与学习路线
开发语言·python·学习
_祝你今天愉快9 小时前
从驱动来分析服务的添加过程
android