Node js NPM cheerio 将“变成”
Node js NPM cheerio turning " into "
我的应用程序正在请求服务器并返回 html。
当 html 回来时,我 运行 通过 cheerio 并修改在 html 中找到的域名。
当返回字符串化 Json 时,cheerio 将 " 替换为 ",这导致它无法被 javascript 解析。
HTML 中的 "s 没有被 cheerio 更改为 "。谁能告诉我为什么字符串化 Json 而不是 HTML 会发生变化,而且告诉我如何阻止它更改为 "
我的 HTML
的 Cheerios 输出
<div id="et-info">
<span id="et-info-phone">+44 0000 000000</span>
<a href="mailto:hello@newdomain.com"><span id="et-info-email">hello@newdomain.com</span></a>
</div>
未解析的 Json 字符串的 Cheerios 输出
{"result":"success","redirect":"http:\/\/www.domain.com\/checkout\/order-pay\/3798?key=wc_order_55d7344aa233b"}
我已经尝试添加
解码实体:真
var $ = cheerio.load(html[key], { decodeEntities: true });
将 decodeEntities 设置为 false 将解决正在发生的问题。
var $ = cheerio.load(html[key], { decodeEntities: false});
我的应用程序正在请求服务器并返回 html。
当 html 回来时,我 运行 通过 cheerio 并修改在 html 中找到的域名。
当返回字符串化 Json 时,cheerio 将 " 替换为 ",这导致它无法被 javascript 解析。
HTML 中的 "s 没有被 cheerio 更改为 "。谁能告诉我为什么字符串化 Json 而不是 HTML 会发生变化,而且告诉我如何阻止它更改为 "
我的 HTML
的 Cheerios 输出<div id="et-info">
<span id="et-info-phone">+44 0000 000000</span>
<a href="mailto:hello@newdomain.com"><span id="et-info-email">hello@newdomain.com</span></a>
</div>
未解析的 Json 字符串的 Cheerios 输出
{"result":"success","redirect":"http:\/\/www.domain.com\/checkout\/order-pay\/3798?key=wc_order_55d7344aa233b"}
我已经尝试添加
解码实体:真
var $ = cheerio.load(html[key], { decodeEntities: true });
将 decodeEntities 设置为 false 将解决正在发生的问题。
var $ = cheerio.load(html[key], { decodeEntities: false});