草庐IT

安全模式

全部标签

javascript - 将 'arguments' 传递给 'apply()' 是否安全

假设我有以下代码(完全没用,我知道)functionadd(a,b,c,d){alert(a+b+c+d);}functionproxy(){add.apply(window,arguments);}proxy(1,2,3,4);基本上,我们知道apply需要一个数组作为第二个参数,但我们也知道arguments不是一个正确的数组。代码按预期工作,所以可以肯定地说我可以将任何类似数组的对象作为apply()中的第二个参数传递吗?以下内容也可以使用(至少在Chrome中):functionproxy(){add.apply(window,{0:arguments[0],1:argumen

javascript - 在横向模式下将 .rdlc 报告导出为 pdf

我的报告属性设置为宽度11英寸和高度8.5英寸。我的正文属性设置为宽度10英寸和高度7.5英寸,边距为0,但报告始终以纵向模式显示。编写页面代码的人正在aspx页面内使用reportviewer控件,该页面从JavaScript弹出窗口弹出,将响应写入pdf。如果报表在报表查看器中打开,它会像预期的那样横向显示。有什么想法吗? 最佳答案 报表(.rdlc)的宽度、高度和方向取决于两个因素:报表上应用了哪些页面设置。我们可以通过打开报告将方向设置为横向在解决方案资源管理器中添加一些代码行来定义宽度、高度和方向。FunctionSetP

javascript - 依赖 Content-Type : text/plain to mitigate malicious javascript execution in response? 是否安全

我们有一个返回的web应用程序HTTP/1.1400BadRequest...Content-Type:text/plain;charset=UTF-8Content-Length:57Date:Tue,14Apr201519:24:54GMTConnection:closeInvalidprojectareaitemidalert(1086)据我了解,依靠Content-Type:text/plain;charset=UTF-8作为防御来阻止javascript执行是不够的。相反,应该对输出进行编码,并且应该对输入进行输入验证并丢弃垃圾。我正在寻找的是关于处理具有javascript

javascript - 如何让 TinyMCE 全屏模式与 Bootstrap NavBar 一起工作

刚开始在MVCrazor元素中使用TinyMCE,对HTML编辑印象深刻。当我全屏使用它时(使用以下选项)$('#ApplicationHtmlTemplate').tinymce({theme:"modern",plugins:"code,pagebreak,fullpage,table,fullscreen,paste,spellchecker",toolbar1:"undo|redo|copy|paste|searchreplace|spellchecker|table|pagebreak|fullpage|fullscreen"})我注意到它出现在Bootstrap标题栏下方:

javascript - 在 JavaScript 中选择 OOP 模式

在其他人的帮助下和一些资源中,我将这些放在一起。我做了一个fiddleofeverything,精简代码发布在下方。基本上我已经学会了如何使用这些模式中的每一个,但我很好奇这些方法之间更根本的区别。下游代码实际上与这些模式中的任何一个相同,但是除了个人偏好之外,是否有理由应该使用一个而不是另一个?此外,尽管我已尝试收集最常见的模式,但如果更好,请提出您自己的模式。模式1(基于对象):varmouseDiff={"startPoint":{"x":0,"y":0},"hypotenuse":function(a,b){//dosomething},"init":function(){//

javascript - 使用 Javascript 以编程方式将 Google Chrome 置于全屏模式?

我最近在YouTube上单击YouTube视频旁边的全屏按钮,屏幕顶部出现一条消息,说我已进入全屏模式。此消息是您在键盘上按f-11时收到的native消息。我还在某处(我现在找不到)读到一些东西说现在可以用Javascript来做到这一点。问题我如何根据命令将用户浏览器(GoogleChrome)置于全屏模式?-如果没有扩展,他们将需要事先下载或任何类似性质的内容。我正在使用jQuery,所以最好,但我根本找不到如何做。编辑:我见过其他类似的问题,但很久以前就有人问过,我相信这个功能是相当新的。 最佳答案 这是一篇好文章:Nati

javascript - AJAX 跨域安全背后的基本原理是什么?

考虑到编写跨域获取数据的服务器端代理的简单性,我不知道阻止客户端AJAX跨域调用的最初意图是什么。我不是在寻求猜测,我是在寻找语言设计者(或与他们关系密切的人)的文档,了解他们认为自己在做什么,而不仅仅是给开发人员带来轻微的不便。TIA 最佳答案 防止浏览器充当反向代理。假设您正在浏览http://www.evil.com从您办公室的PC上,并假设该办公室中存在一个包含敏感信息的内部网http://intranet.company.com只能从本地网络访问。如果跨域策略不存在,www.evil.com可以向http://intran

javascript - Web Workers 是一种安全的方式来沙盒不受信任的 JavaScript 代码吗

我想知道WebWorker是否是对不受信任的JavaScript代码进行沙盒处理的安全方法。例如,在绘图应用程序的上下文中,开发人员可以在其中实现新的绘图工具,您可以将他们的代码放入webworker中,并且每当用户单击Canvas时,向他们发送包含光标位置的JSON消息,以及图像数据数组,当脚本完成时,它会传回一条包含新图像数据的消息。这是否安全,或者是否存在我没​​有想到的风险? 最佳答案 DOM对Webworker不可用,但可以访问同源内容,例如indexedDB。请参阅我的相关问题:Canworkersbesecureeno

javascript - Microsoft Edge 不接受内容安全策略的哈希

问题Content-Security-Policy应该默认将脚本和样式解析列入黑名单,并允许它基于各种指令来验证预期输出的哈希值。浏览器必须无法实现任何未预先提供匹配哈希的Javascript或CSS。具有匹配散列的代码应正常执行。MicrosoftEdge拒绝所有JS/CSS页内block。说明在MicrosoftEdge和任何其他浏览器中访问下面的实时演示链接。现场演示:http://output.jsbin.com/biqidoqebu演示原始源码#loading{color:transparent}#loading:after{color:green;content:"Styl

javascript - 数组数组的 "column total"的模式

我正在寻找一种模式来获取数组中每个第n项的总数。从概念上讲,这就像获取数据表的列总计。vardataRows=[[10,11,12,13],[20,21,22,23],[30,31,32,33]]//Theoutcomeshouldbe://[60,63,66,69]我在服务器端有一些等效的Python代码,但决定它应该在客户端处理,因此在javascript中。这是等效的Python代码:[sum(i)foriinzip(*data_rows)]你会如何写这篇文章?我确信如果没有zip、unpack和listcomprehension,代码会更长,但是可以优雅地完成吗?还有扩展JS核