在express4.x中使用req.params读取URL中的参数,当参数为中文时,req.url输出的中文为十六进制,而req.params输出的确是中文,我想问一下使用req.params是不是调用了什么或是默认哪种解码方式
PHP中文网2017-04-17 15:17:49
현재 공식 노드는 멀티바이트 인코딩 방법인 UTF-8만 지원하므로 UTF-8 인코딩이어야 합니다. UTF-8의 한자는 3바이트로 구성됩니다. 정확히 12바이트인 경우에도 확인할 수 있습니다.
req.body req.query req.params는 트랜스코딩된 멀티바이트를 다시 되돌립니다.
PHP中文网2017-04-17 15:17:49
우렌코드입니다. URL 안전 문자 집합을 사용하여 인코딩됩니다.
은 encodeURI
과 decodeURI
을 사용하여 js에서 인코딩 및 디코딩을 수행합니다. 다른 언어도 비슷한 방법을 제공합니다.
주제에서 벗어남
URL에 표시할 수 없는 문자(예:
공백 문자) 또는 문자 집합이 US-ASCII의 상위 집합인 경우 UTF-8 인코딩을 사용하세요(매우 특수한 경우 UTF-16). 인코딩이 사용되었으나 더 이상 사용되지 않음) %XX
형식을 사용하여 인코딩된 데이터를 나타냅니다. 표준 RFC3986을 참조하세요.
채택되길 바랍니다.