pub fn extract_bearer(headers: &HeaderMap) -> Option<String>
从 Authorization 头解析 bearer 明文(去前缀后返回完整 token 字符串)。 非 bearer、缺前缀、解码失败统一返回 None。