最终,我正在寻找一种在给定浏览器选项卡上实际阻止所有网络流量的方法。所以我不知道阻止 HTTP 请求是否会阻止诸如流视频之类的东西,但这是一个开始。
这个问题的原因是我搬到了一个互联网昂贵的发展中国家,我对在页面显然完成加载后继续占用带宽的网站感到恼火。这包括无限滚动的页面(似乎在新闻网站上越来越流行)、自动开始播放视频的网站以及可能在后台运行的任何其他类型的东西。我找不到 Chrome 扩展程序来关闭/打开标签的互联网流量。我知道可以在 Developer Tools > Network 下将选项卡设置为离线,但是经常使用该方法进行常规浏览是不切实际的。我希望能够使用热键甚至在页面加载后自动关闭网络流量。
我认为我在其他地方找到的以下代码可以拦截 HTTP 请求。但那时我不知道如何阻止它。
XMLHttpRequest.prototype.send = function() {
//what now?
}
Run Code Online (Sandbox Code Playgroud)
还有一件事情。阻止所有请求后,如何重新启用它们?(我如何安全地恢复XMLHttpRequest.prototype.send到它的原始形式?)我想我可以尝试在变量中捕获原始函数并稍后“重新附加”它,但是对于需要克隆的对象,我不能使用像jQuery这样的库。我刚试过:
bob = Object.create(XMLHttpRequest.prototype.send)
XMLHttpRequest.prototype.send = function() {
console.log("Nope.")
return false
}
XMLHttpRequest.prototype.send = bob
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用。
对于这个问题我还没有看到满意的答案。这基本上是这个问题的重复,但它关闭不当并且给出的答案不充分。
我提出了自己的解决方案,我将在下面发布。
这对于网页抓取很有用,或者在我的例子中,在处理自定义元素的 javascript 库上运行测试。我确保它生成我想要的输出,然后使用此函数来抓取给定测试输出的 HTML,并使用复制的 HTML 作为预期输出,以便将来与测试进行比较。
javascript web-scraping shadow-dom custom-element native-web-component
我想我可以使用一个带有大型密件抄送列表的mail()命令,或者有一个发送许多个人电子邮件的循环.
我只是打算使用Bcc,因为这是最简单的编程,对于服务器来说似乎最容易处理,但是我必须为To字段选择一些地址.我可以发送邮件到网站自己的地址,但如果收件人发给他们,它会更明智.此外,通过在开头说"Hello [firstname]"来定制每条消息会很不错.
我只是担心发送给太多人会花费太长时间.最大收件人数为2000.网站上的用户选择要发送到的人员列表,键入消息,然后按发送.如果发送给2000人,他们会永远等待吗?服务器会窒息吗?
还有什么考虑因为邮件服务器将此视为垃圾邮件?
编辑:显然我的客户端有一个SMTP服务器,他说可以限制外发电子邮件.但是,当发送给1000多人时,PHP仍然不确定...
为什么当我php从命令提示符运行时,我从php.exe收到一条消息,说"驱动器中没有磁盘.请将磁盘插入驱动器F:." 驱动器F与任何东西有什么关系?!
我仍然可以执行PHP命令,但每次运行时都会弹出该消息,这确实很烦人.
我从未见过这样的事情.
文件结构:
base.php:
<?php require("../includes/stuff.php"); ?>
Run Code Online (Sandbox Code Playgroud)
stuff.php:
<?php
require("constants.php");
echo "Welcome to stuff.php";
?>
Run Code Online (Sandbox Code Playgroud)
constants.php:
<?php echo "IMPORTANT CONSTANTS DEFINED HERE!"; ?>
Run Code Online (Sandbox Code Playgroud)
结果:
欢迎来到stuff.php
为什么不显示constant.php消息?!我会告诉你什么不是问题:它不是php代码.
我从一些复杂的文件开始,其中常量文件实际上是DEFINE() - 一些常量,并且由于某种原因,只有前几个常量正在工作.我最终禁用了所有无关的代码,包括DEFINE()和只有echo语句,这个问题仍然一直盯着我.顺便说一下,无论代码的顺序如何,一些定义的常量如何通过而不是任何回声?
所以我终于意识到这是荒谬的,并决定创建一些新文件作为测试.那些工作.或者也许他们没有,我忘了.无论如何,通过创建新文件并尝试移动它们并将代码从一个文件复制到另一个文件,我已经取得了一定程度的成功,但似乎没有任何押韵或理由.
哇,这只是在:我得到了constants.php文件在不同的名称下工作,但当我将其更改为constants.php时,它停止工作!我尝试在不同的浏览器中清除缓存/打开并重新启动服务器,但没有一个有用.我觉得我或我的电脑都是毒品.Gaaaahh!
啊哈.我遗漏了一条非常重要的信息.我没有提到的一个文件.
包含该文件而不是includes/constants.php.这就是我没有丢失文件错误的原因.这完全令人困惑!我期望sub-includes在更高级别包含之前发生所以stuff.php会在它自己的目录中查找constants.php,但我猜base.php包含stuff.php和THEN base.php执行stuff.php中指定的include这意味着include是相对于base.php.所以绝对路径毕竟是解决方案.
附加编辑:
很有意思.当我简单地改变include/constants.php(例如constanza.php)的名字时,我仍然感到困惑.看起来文件包含不是那么剪切和干燥.如果有两个具有相同名称的文件,则它将优先选择相对于执行包含的父文件的文件.但是,如果没有选择它会相对于孩子做得很好.
我想有一个通用的PHP函数,它根据函数的参数构建一个mysql查询.由于它是通用的,查询有时可能会要求id = 123或name ='Bob'.我测试了一些关于数字的引用的问题,甚至是类似的东西WHERE id > '50' + 7,但是它有效,但我怀疑这不会给你带来麻烦.我想如果这真的是一个通用函数,它应该能够处理日期和其他任何数据类型.那么安全地形成这些查询的最佳方法是什么?
说我有一个字符串
"item:(one|two|three), item2:(x|y)"
Run Code Online (Sandbox Code Playgroud)
是否有一个可以"考虑"它的正则表达式
"item:one, item:two, item:three, item2:x, item2:y"
Run Code Online (Sandbox Code Playgroud)
或者我必须诉诸分裂和循环?
如果我必须拆分它,我怎么转
"item:(one|two|three)"
Run Code Online (Sandbox Code Playgroud)
成
"item:one, item:two, item:three"
Run Code Online (Sandbox Code Playgroud)
如果括号之间的东西量是可变的?正则表达式对这样的问题没用吗?
我对此感到愚蠢但是当您按Enter键时提交表单不是正常的Web浏览器行为吗?这可能有什么问题?我已经检查过,通过js禁用测试,它不是任何javascript干扰.它在IE中工作.我宁愿让提交按钮成为一个<button>而不是一个<input>,但我认为输入将有更好的工作机会.
<form role="search" method="get" class="search-form form-inline" action="http://local.sos/">
<div class="input-group">
<span class="input-group-btn">
<button class="btn" disabled=""><i class="icon-search"></i></button>
</span>
<input type="search" value="" name="s" class="search-field form-control" placeholder="Search">
<span class="input-group-btn">
<input type="submit" class="search-submit btn"><i class="icon-arrowright"></i> </input>
</span>
</div>
</form>
Run Code Online (Sandbox Code Playgroud) 我刚刚学习了图像替换,技术,或者说我刚刚学习,因为我在Bootstrap中看到了一个mixin.我最近看到它出现了几次,所以我决定进行调查.我发现了这篇文章,但我承认我不明白所有的大惊小怪.为什么不在您要"替换"的文本上添加IMG标记?
php ×4
javascript ×3
html ×2
css ×1
email ×1
formatting ×1
forms ×1
http ×1
include ×1
mysql ×1
nested ×1
path ×1
regex ×1
shadow-dom ×1
types ×1
web-scraping ×1
windows ×1