草庐IT

数据安全保障

全部标签

javascript - 用于 javascript 对象的安全属性引用的库函数

考虑以下代码:functionfoo(handlers){callSomeFunction(handlers.onSuccess,handlers.onFailure);}调用者可以:foo({onSuccess:doSomething,onFailure:doSomethingElse});或者只是foo()如果他/她没有什么特别的事情要做。上述代码的问题在于,如果未定义“处理程序”,就像上面简单的foo()调用一样,那么在执行callSomeFunction(handlers.onSuccess,handlers.onFailure)期间将抛出运行时异常).为了处理这种情况,可以将

允许具有多种数据类型的 Javascript 参数 : good practice or not?

我已经多次看到-特别是在jQuery中-一个函数可以有多种有效数据类型,比方说字符串或函数。此外,在我自己的代码中,有时我的函数可以采用一个或多个值。所以我可以调用函数:myFunc("arg");ormyFunc(["arg1","arg2",...]);这看起来更灵活,打字也更方便,但这真的是好事吗?因为另一方面,没有明确说明函数是什么类型,据我所知,JIT编译器无法高效工作。并且通常必须进行某种类型的类型强制转换,这会带来额外的性能损失。那么,即使数组中只有一个对象,总是写:myFunc(["arg"])会更好吗?你对此有何看法? 最佳答案

javascript - 嵌入式 javascript 和 HTML 中的安全性

我正在尝试为以下情况找到解决方案:我有一个由HTML、javascript、AJAX和广告等组成的网络应用程序。我希望用户为我的应用程序/网站做出贡献,创建将嵌入其中的插件。此插件将使用类似技术(ajax、HTML等)创建,因此我需要允许插件运行它们自己的javascript代码。每个插件都将在包含一些用户信息和插件的页面中运行(如旧的fbmlfacebook应用程序)问题在于,通过这种方式,插件还可以调用以获取用户信息。(因为插件的代码是嵌入的,所以它的域将与主网站相同,并且代码将完全在我的网站上)。所以问题是:我怎样才能避免它并精确控制插件可以获取有关用户的哪些信息?插件不会被检查

Javascript - 图像数据处理和div渲染

所以我为自己创造的挑战就是这样。我有一张源照片:我正在映射颜色值并使用div创建它的像素化表示结果如下:我使用的代码是:'usestrict';varimageSource='images/unicorn.jpg';varimg=newImage();img.src=imageSource;varcanvas=$('')[0];canvas.width=img.width;canvas.height=img.height;canvas.getContext('2d').drawImage(img,0,0,img.width,img.height);varcontext=canvas.g

javascript - D3 绘制数据集的选择性部分

我有一个大型时间序列数据集需要绘制图表,我正在尝试使用D3来完成它。我计划让我的图形的x轴为时间,并允许图形在x方向上移动。我想让图表只加载/显示屏幕上当前时间范围内存在的点。例如,如果我的数据集有1-100次,但图形以显示的时间1-10开始,则图形应该只绘制1-10点。然后用户可能会向右移动并查看时间5-15,图表应相应更新。任何人都可以向我解释如何通过d3完成此操作吗?我很难理解从一次加载并立即绘制整个数据集到选择性地绘制数据子集。 最佳答案 我认为您正在寻找selection.filter()功能。例如你可以有:varallN

javascript - Meteor 中的服务器端数据验证

我的客户端文件中有一个表单和一个提交函数:functionsubmitme(){varmessage=$('#daform').serializeJSON();message.owner=Meteor.user().username;if(!message.description||!message.location.lat||!message.location.lng||!message.mysex||!message.yoursex){return;}else{lists.insert(message);console.log("Submitted!");$('#daform')[

javascript - Highcharts:如何设置数据分组

我有一个包含大量数据的highstock图表,我能够定义如何对数据进行分组,但我希望用户指定要使用的数据分组并在日、周、月等之间动态更改。那么是否有可能有一个按钮,用户可以通过该按钮更改数据的分组方式,如果可以,如何更改?有许多未记录的功能,例如currentDataGrouping,但没有设置数据分组...我可以通过任何方式看到...series:[{type:'column',name:title,data:data,dataGrouping:{units:[['week',[1]],['month',[1]]]}}] 最佳答案

javascript - 使同一域 iframe 安全

tl;dr我可以在iframe上安全地执行不受信任的脚本吗?背景故事:我正在尝试makesecureJSONPrequests.许多旧版浏览器不支持WebWorkers,这意味着我提出的当前解决方案并不是最优的。我想我可以创建一个并在其中加载脚本。该脚本将执行一个JSONP请求(创建一个脚本标签),该请求将向主页发布一条消息。主页会收到消息,执行回调并销毁iframe。我设法dothissortofthing.functionjsonp(url,data,callback){variframe=document.createElement("iframe");iframe.style.

javascript - 0 用 d3 系列数据填充空值

我正在使用D3制作多折线图,但在呈现时遇到了一些问题。我正在尝试使用如下所示的数据呈现两行:[{key:"line1",values:[{x:1,y:1},{x:2,y:2}]},{key:"line2",values:[{x:1,y:1},{x:2,y:2},{x:3,y:3}]}]“第2行”渲染得很好,但“第1行”在x=2时停止渲染。我知道我的数据集可能被认为是不完整的,但我很好奇是否有办法将默认值设置为0,其中x有间隙或空值吗?特别是在这个例子中,我希望“第1行”在x=3的地方显示y=0。 最佳答案 D3和NVD3没有执行此操

javascript - 获取数据绑定(bind)的元素(使用 KnockoutJS)

目标获取触发函数的元素。问题查看我的代码:如您所见,当if和ifnot为真或假时,我触发了existsAtSummary()函数。但是这些按钮在foreach中,我需要让它们的元素一起工作,但我不知道如何操作。我的JS:functionProductLayoutViewModel(){varself=this;self.existsAtList=function(){returntrue;};}ko.applyBindings(newProductLayoutViewModel());使用我的代码here,onJSFiddle.我的想法我在想这个:self.existsAtList=f