alibaba / alibaba/fastjson2

序列化重大bug,一些特殊字符无法处理

Open
#3,348 2 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
4.4k
Forks
613
Avg merge
1d 22h
Merged PRs (30d)
6

Description

### 问题描述
*简要描述您碰到的问题。*

### 环境信息
*请填写以下信息:*

- OS信息: [e.g.:windows]
- JDK信息: [e.g.:graal 17]
- 版本信息:[e.g.:Fastjson2 2.0.54]

### 重现步骤
*如何操作可以重现该问题:*

JSONObject jsonObject = JSON.parseObject("{\"url\":\"/v2/system/version\"}");
Object url = jsonObject.get("url");
System.out.println(url);
System.out.println(JSON.toJSONString(jsonObject));

springboot3+aot 项目,这个输出就很奇怪
/v2/system/version
{"url":"em/versiem/version"}
{"url":"em/versiem/version"}

不知道为啥字符串变了

1. 使用 `xxx.xxx` 方法
2. 输入 `...` 数据
3. 出现 `...` 错误
```java
//可在此输入示例代码
```

### 期待的正确结果
*对您期望发生的结果进行清晰简洁的描述。*

### 相关日志输出
*请复制并粘贴任何相关的日志输出。*

#### 附加信息
*如果你还有其他需要提供的信息,可以在这里填写(可以提供截图、视频等)。*

Contributor guide

Open the contributing guide

Research direction

Start with the provided JSON.parseObject and JSON.toJSONString reproduction in a Spring Boot 3 AOT project, then compare its behavior with and without AOT. Identify why the URL changes from /v2/system/version to /v2/system/version incorrectly, and verify that serialization preserves the original string.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring-boot
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.