V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  bramblex  ›  全部回复第 48 页 / 共 54 页
回复总数  1061
1 ... 40  41  42  43  44  45  46  47  48  49 ... 54  
@ETiV

然而……我懒
@lingo233 能模糊匹配吗?我就是懒而已……
@582033 这还是小轮子 /w\
@imn1 如果提示not permitted的话直接 `sudo !!` 就好了……这是基本啊。
2015-07-29 10:00:35 +08:00
回复了 qnsh 创建的主题 JavaScript JavaScript eval()安全问题
@sneezry 首先,我还真不是“前端程序员”……

1. ==============================================
上面所谓的安全问题出在那里?所谓的服务器bug是是什么问题?

说白了就是代码和数据耦合。因为你让服务器去给你生成了一段代码,然后执行。

为什么你需要让服务器给你生成代码?因为你你把数据插进了代码里面,所以需要才需要让服务器给你生成代码。

最后产生什么?你所说的“安全问题”。但这些问题只是因为程序设计的问题,而不是eval的问题。

2.==============================================
eval还要执行自己生成的代码。为啥要自己生成代码(用js生成js代码)?当然是实现原生JS不能实现的功能啊。

比如你给我实现一下,如何重命名一个函数。比如一个 (function(){}) 我要把它变成命名的 (function name(){})
2015-07-29 02:17:09 +08:00
回复了 qnsh 创建的主题 JavaScript JavaScript eval()安全问题
@sneezry

所以你的业务是多奇葩需要 eval() 用户输入?你难道需要用户给你写代码?虽然我还真有想法做一个类似的网站。

出现这种情况只能说明你的程序设计本身有问题,而不是eval有问题。如果你js里面要是硬要包含一段未做过滤的用户输入,那么无论你用eval()还是插入节点都会产生问题。eval产生的绝大多数所谓的问题,都是因为低端程序员滥用而导致的,而不是eval本身有问题,这一点上就跟c指针或者goto语句一样。

其实编程规范里面禁止用eval,这不过是就为了在团队协作的时候防猪队友而已,你不能要求你每一个队友都跟你一样能驾驭eval(),所以干脆禁止写eval。

不过eval()的灵活性让很多不可能编程可能。举一个简单的例子,类似c++的namespace,也可以在javascript里模拟实现了。
2015-07-28 23:56:47 +08:00
回复了 qnsh 创建的主题 JavaScript JavaScript eval()安全问题
@sneezry 动态加载代码的时候eval的效率比插节点高的得多,而且可以并行加载!
2015-07-28 21:34:06 +08:00
回复了 qnsh 创建的主题 JavaScript JavaScript eval()安全问题
这是你的问题,为什么你eval的东西里面会有用户输入?你需要用户给你写代码吗?

如果没有,那么你的用户怎么注入你?入侵你服务器来注入吗?
@KCheshireCat

还是有依赖,不过这次用的方式更聪明了……不直接改链接了,而是劫持链接。虽然这样做有个问题,就是如果右键打开的话就会出问题了……

https://greasyfork.org/zh-CN/scripts/11281-%E5%BF%AB%E7%85%A7%E9%93%BE%E6%8E%A5

// ==UserScript==
// @name 快照链接
// @namespace lovearia.me
// @description 把谷歌快照的链接全部转换成谷歌快照
// @include http://webcache.googleusercontent.com/search?*q=cache:*
// @version 2
// @grant none
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
// ==/UserScript==

$('body').on('click', 'a[href]', function (e) {
if (!$(this).closest('#google-cache-hdr').length) {
var href = 'http://webcache.googleusercontent.com/search?q=cache:' + escape(this.href);
location.href = href;
e.preventDefault();
}
});
2015-07-27 16:59:36 +08:00
回复了 ibloging 创建的主题 程序员 请停止将 JavaScript 类型化(建议不要使用 class 实现类继承)
要怪就怪自己没本事折腾,别说JavaScript可以折腾出来类继承了,VimScript这种蛋疼货一样可以
2015-07-27 16:56:59 +08:00
回复了 ibloging 创建的主题 程序员 请停止将 JavaScript 类型化(建议不要使用 class 实现类继承)
@KCheshireCat

不错。/w\
2015-07-27 09:19:55 +08:00
回复了 soratadori 创建的主题 Python 正则表达式请教
@msg7086

let me google that for you!/w\
笔很牛逼!很精准!
2015-07-26 17:20:42 +08:00
回复了 hellogbk 创建的主题 程序员 问一个简单的功能模块划分的问题
你觉得文章的搜索是用户模块的还是文章模块的?

用户发文章的记录可以看成按用户搜索文章不是么?
2015-07-26 08:56:03 +08:00
回复了 mianju 创建的主题 Python 有人和我一样觉得 Python 入门容易,深入却很难?
@unity0703 还是更喜欢Haskell,Haskell更美,我是一个颜控
2015-07-26 00:19:05 +08:00
回复了 kamushin 创建的主题 JavaScript 有的时候真的不知道 js 这些东西是怎么被设计成这样的....
@riaqn

然而prel风格的正则大法好,正则是处理字符串的利器。
然而bash光一个pipe+重定向就秒天秒地了。
然而js……嗯,js大法好! /w\
2015-07-26 00:16:15 +08:00
回复了 kamushin 创建的主题 JavaScript 有的时候真的不知道 js 这些东西是怎么被设计成这样的....
这……貌似喷都没喷到点上唉……
2015-07-26 00:13:50 +08:00
回复了 li24361 创建的主题 程序员 公司准备使用 nodejs,那我们也能算前端工程师咯?
js 这货门槛还是很高的,非常忌讳猪队友……
1 ... 40  41  42  43  44  45  46  47  48  49 ... 54  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2837 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 32ms · UTC 07:06 · PVG 15:06 · LAX 00:06 · JFK 03:06
Developed with CodeLauncher
♥ Do have faith in what you're doing.