小编foi*_*rth的帖子

难以猜测的SQL数据库表和列名是否有助于防止SQL注入?

我刚认识了一个开发人员,他在MYSQL数据库中使用下划线(例如_users,_name,_active)添加了每个表名和列名.当我质疑这种做法时,他说这有助于防止SQL注入攻击 - 我以前从未遇到过这种做法/建议.它如何有助于防止SQL注入攻击?

mysql sql sql-injection

22
推荐指数
1
解决办法
1392
查看次数

angularjs infinite $ digest当没有范围改变时循环

我的角度代码中出现以下错误.我很难理解为什么函数getDrawWithResults会导致一个摘要周期,因为似乎没有任何副作用?它只返回属性设置为true的列表中的项.

只有首次使用getDrawWithResults在页面上时才会出现错误,如果我删除,则错误停止.

Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: [["getDrawsWithResults(selectedLottery.draws); newVal: []; oldVal: []"],["getDrawsWithResults(selectedLottery.draws); newVal: []; oldVal: []"],["getDrawsWithResults(selectedLottery.draws); newVal: []; oldVal: []"],["getDrawsWithResults(selectedLottery.draws); newVal: []; oldVal: []"],["getDrawsWithResults(selectedLottery.draws); newVal: []; oldVal: []"]]
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

HTML

<h4 ng-cloak ng-hide="getDrawsWithResults(selectedLottery.draws)">Results of Selected Lottery</h4>

<div class="con" ng-repeat="draw in getDrawsWithResults(selectedLottery.draws)" ng-cloak>
    <h5 class="con__header">[[ draw.date|date:'EEEE d MMMM yyyy - H:mm' ]]</h5>
    <div class="balls-list__outer con__row">
        <div class="balls-list">
            <div class="balls-list__ball__outer" ng-repeat="b in draw.results">
                <button class="balls-list__ball btn btn-con">[[ b ]]</button>
            </div>

        </div>
    </div> …
Run Code Online (Sandbox Code Playgroud)

javascript infinite-loop angularjs

11
推荐指数
2
解决办法
2万
查看次数

Node.js https.get通过代理生成SSL3_GET_RECORD错误的版本号错误

TLDR

尝试通过我的公司代理使用https.request从github下载zip文件时出现以下错误:

尝试下载Casper.JS时发生错误140735122252160:错误:1408F10B:SSL例程:SSL3_GET_RECORD:错误的版本号:../ deps/openssl/openssl/ssl/s3_pkt.c:337:

更多信息

我正在尝试编辑grunt-casperjs安装脚本,以允许我和我的同事安装在我们的代理后面.该脚本从Github获取Casper并下载它.最初脚本不支持代理,所以我复制了grunt-phantomjs代理支持.Phantomjs通过http连接下载,这可以通过我们的代理工作正常(如果我将其更改为https URL,它会失败并出现相同的错误).

我尝试过以下方法:

  • 我添加了https.globalAgent.options.secureProtocol ='SSLv3_method'; 如前所述,显示未知的协议错误.
  • 使用curl,请求完成正常
  • 更新了OpenSSL和Node
  • 我添加了https.globalAgent.options.secureOptions ='SSL_OP_NO_TLSv1'; 但这会导致节点在请求发出后返回而没有消息

减少测试用例

var https = require('https');
https.globalAgent.options.secureProtocol = 'SSLv3_method'

var url = require('url');
var downloadUrl = 'https://codeload.github.com/n1k0/casperjs/zip/1.0.3'
var proxy = 'https://username:password@IP:port';

var options = url.parse(proxy);
options.path = downloadUrl;
options.headers = { Host: url.parse(downloadUrl).host }
// If going through proxy, spoof the User-Agent, since may commercial proxies block blank or unknown agents in headers
options.headers['User-Agent'] = 'curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 OpenSSL/0.9.8r zlib/1.2.5'
// Turn basic authorization into …
Run Code Online (Sandbox Code Playgroud)

ssl https proxy openssl node.js

9
推荐指数
2
解决办法
2万
查看次数