我实际上是从我的mysql数据库中获取数据,其中有带有重音符号的文本
“éèàê......
但是当我使用node.js将其渲染到我的ejs文件时,它会向我显示
“hélo”代表“hélo”
。
问题是使用PHP和函数htmlspecialchars(str);
的easyli求解器
Node中是否有与此功能等效的功能?
谢谢
答案 0 :(得分:0)
首先,如果您正确设置了编码(在html页面和数据库中,或者在插入之前/选择之后进行了转换),则无需将特殊字符转换为HTML实体,从而避免了上述行为。应该使用Enter location: http://py4e-data.dr-chuck.net/geojson?
Retrieving http://python-data.dr-chuck.net/geojson?sensor=false&address=http%3A%2F%2Fpy4e-data.dr-chuck.net%2Fgeojson%3F
Retrieved 10092 characters
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-2-a72864740266> in <module>()
15
16 #print json.dumps(json_data['results'], indent=3)
---> 17 print ('Place id',json_data['results'][0]['place_id'])
IndexError: list index out of range
来防止人们发布HTML(将htmlspecialchars()
和<
转换为>
和<
)。
如果您仍然需要转义HTML特殊字符,请查看以下NPM软件包:https://www.npmjs.com/package/html-entities
像这样使用它:
>
将输出
const Entities = require('html-entities').AllHtmlEntities;
const entities = new Entities();
console.log(entities.encode("éèàâê");