찾다

 >  Q&A  >  본문

express - node.js中req.params的问题

在express4.x中使用req.params读取URL中的参数,当参数为中文时,req.url输出的中文为十六进制,而req.params输出的确是中文,我想问一下使用req.params是不是调用了什么或是默认哪种解码方式

天蓬老师天蓬老师2864일 전584

모든 응답(2)나는 대답할 것이다

  • PHP中文网

    PHP中文网2017-04-17 15:17:49

    현재 공식 노드는 멀티바이트 인코딩 방법인 UTF-8만 지원하므로 UTF-8 인코딩이어야 합니다. UTF-8의 한자는 3바이트로 구성됩니다. 정확히 12바이트인 경우에도 확인할 수 있습니다.
    req.body req.query req.params는 트랜스코딩된 멀티바이트를 다시 되돌립니다.

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-17 15:17:49

    우렌코드입니다. URL 안전 문자 집합을 사용하여 인코딩됩니다.

    encodeURIdecodeURI을 사용하여 js에서 인코딩 및 디코딩을 수행합니다. 다른 언어도 비슷한 방법을 제공합니다.

    으아악

    주제에서 벗어남

    URL에 표시할 수 없는 문자(예: 공백 문자) 또는 문자 집합이 US-ASCII의 상위 집합인 경우 UTF-8 인코딩을 사용하세요(매우 특수한 경우 UTF-16). 인코딩이 사용되었으나 더 이상 사용되지 않음) %XX 형식을 사용하여 인코딩된 데이터를 나타냅니다. 표준 RFC3986을 참조하세요.

    채택되길 바랍니다.

    회신하다
    0
  • 취소회신하다