我有一个节点表达应用程序响应浏览器客户端的ajax帖子。我想知道在这个http响应体中发送的无效字符是什么。
我已将响应标头设置为使用charset = utf-8。我的操作系统是Ubuntu,也有一个UTF-8语言环境。问题是,我们正在通过string.prototype.charCodeAt()和string.prototype.fromCharCode()对charcodes进行动态和数学处理来构建我们的响应。我记得当我习惯乱用ASCII时,许多字符都是控制字符。有些意味着tab,有些意味着退格,这总是会破坏文本。
如果我使用char代码构造一个字符串,然后将其作为UTF-8发送到客户端,如果有的话,这些char代码将无效发送给客户端?不幸的是,我来自Windows。我决定学习Linux,这是一条艰难的道路,但我正在取得进步。感谢。
答案 0 :(得分:1)
UTF-8可以编码任何有效的unicode字符。 String.charCodeAt()
返回UTF-16编码的unicode字符值,String.fromCharCode
从一系列unicode字符构造一个字符串,所以在任何时候你都应该有一个有效的unicode字符串,可以正确编码为UTF-8 。控制字符在字符串表示中不是问题,但如果您打印字符串可能会出现问题,例如到控制台。