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);
        });
    }
相关推荐
霸道流氓气质几秒前
Prompt 版本控制与 A/B 测试实战:语义版本管理、一致性哈希分流与 Thompson Sampling 的 Java 生产级实现
java·prompt·哈希算法
Anhty23 分钟前
2026最新免费手机音频处理工具 !!
android·功能测试·ios·智能手机·音视频
程序员老陆30 分钟前
C++ 未定义行为全景:对象模型、优化边界与工程防御
开发语言·c++·程序设计
嵌入式er44 分钟前
影石系统组 一二面OC面经
java·开发语言
徐小黑ACG44 分钟前
Golang 基础06 接口interface
开发语言·后端·golang
春涧草茶1 小时前
慢就是快12-12手动抛出异常
java·linux·前端
半杯咖啡半行码1 小时前
Qt 开发基础:版本演进、常用工具与多平台安装
开发语言·qt
下页、再停留1 小时前
【C#桌面客户端系列学习-8】批量导出数据为csv格式
开发语言·c#·visual studio
菜鸟~noob2331 小时前
【电子战】 第26篇:大气衰减——氧气与水汽吸收【含matlab代码】
开发语言·matlab
菜鸟~noob2331 小时前
【电子战】第25篇:自由空间、双射线与菲涅尔区【含matlab代码】
开发语言·算法·matlab