比如输出了：

```json
{"code":403,"description":"No role grantd","data":4}{"code":400}
```


先了解一下：完整的Web[《请求处理过程示意图》](/article/242)。在示意图中的任何一个环节，都是有可能进行响应输出的，从而造成非期望的结果。

比如这个简单的例子，就可以造成上面的输出效果：

App.class

```java
import org.noear.solon.Solon;

public class App{
    public static void main(String[] args){
        Solon.start(App.class, args, app->{
            app.filter((ctx,chain)->{
                chain.doFilter(ctx);
                ctx.output("{\"code\":400}");
            });
        });
    }
}
```

DemoController.class

```java
import org.noear.solon.annotation.Controller;
import org.noear.solon.annotation.Mapping;
import org.noear.solon.core.handle.Result;

@Controller
public class DemoController{
    @Mapping("/test")
    public Object test(){
        return Result.failure(403, "No role grantd");
    }
}
```

一般来讲，大家不会这么写代码。而造成这种输出的“常见场景”是对某某异常的处理：


### 建议

* 多注意细节
* 可以借助 `ctx.getHandled()`, `ctx.getRendered()` 做些控制与检查
* 异常，可以由一个全局 [过滤器](/article/206) 处理（避免出现“可能二”）[推荐]
