gpt4 book ai didi

javascript - lint errors blocking 做了一些研究但没有成功

转载 作者:搜寻专家 更新时间:2023-10-30 21:13:50 26 4
gpt4 key购买 nike

  • 我是 tslint 和 typescript 的新手。
  • 我正在尝试修复此错误。
  • 你能告诉我如何解决吗?
  • 我做了一些研究,但找不到解决方案。
  • 提供以下代码。

(no-inner-html) app/components/sports.ts[717, 9]:使用 html() 函数将字符串写入 innerHTML 是不安全的:$('.tubing').html(health.标题)

if (health.title == "waterS") {
let that = this;
let recordPlayersWeight = {};
this.futureParrot = [];
this.pastParrot = [];
this.peacockService.getResponse(health.url, 'get', null)
.subscribe(recordPlayersWeight => {
this.gridData = recordPlayersWeight.waterDtos;
that._recordPlayersWeightSource.recordPlayersWeight(this.gridData);
},
err => {
}
);
}

that.window = $("#TigerwatersPopup");
that.window.kendoWindow({
width: "60%",
title: false,
visible: false,
resizable: false,
actions: [],
draggable: false,
modal: true,
open: function() {
$("html, body").css("overflow", "hidden");
that.isVisible = true;
$('.tubing').html(health.title);

最佳答案

当您使用 jQuery 的 .html() 时函数,可能会不小心将“不安全”元素添加到您的页面,例如 iframe 标记或源标记。如果您添加的 html 是由恶意用户提交的(例如,作为查询的一部分或在表单中输入的数据),您就是在给他们攻击您的机会。这是一种代码注入(inject)攻击(参见 https://en.wikipedia.org/wiki/Code_injection )。

在您的情况下,您似乎只是想将纯文本放入 .tubing元素,所以这样做更安全

$('.tubing').text( health.title );

它的作用是“转义”任何 HTML 特殊字符,如 <>以便它们显示为文本而不是被视为元素。这是安全的,可以防止攻击者注入(inject)代码,并且不会触发 lint 规则。

关于javascript - lint errors blocking 做了一些研究但没有成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46354305/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com