NBSP造成接口接口异常问题

58 阅读1分钟

今天在调试后端接口时,出现同一个接口,相同参数,一个能正常返回,一个却返回异常的问题。正常返回的接口参数如下:

{
  "tableId": "tableId",
  "columns": [
    "id",
    "name"
  ]
}

异常返回的参数如下:

{
    "tableId": "tableId",
    "columns": [
        "id",
        "name"
    ]
}

从表面上看,两者没有任何区别,但是后一个参数却会造成后端接口反序列化异常(使用fastjson序列化)。两者唯一区别是,后一个参数是在yapi的备注中复制,前一个参数是拼接而成。经过对后端接口debug之后,发现后一个参数发到后端之后,接口中的参数中,所有的空格均变成NBSP,因此导致异常。 由此,去掉之后即可。