监控外部网站的HTTP请求
monitor HTTP requests of external website
我想根据网站上发生的事情编写一个脚本生成器,为此我编写了javascript - 基于ajax的脚本生成器,其中在每个页面上我都包含js文件,并且在提交页面的页面的功能块中,我调用javascript的函数来启动通过getElementsByTagName(*)读取页面变量(DOM), 循环遍历后,我使用 ajax 将预定义格式写入文件。
这一切都是针对其运行的同一站点完成的,但是现在当我需要为任何其他站点实现相同的记录器和脚本生成器时,就像在网站上所做的那样并登录到文件,我既不能将我的脚本包含在任何其他外部网站上,也不能在提交之前放置函数调用读取 dom 并扔到文件中。
这是JS的虚拟代码
beginRecording();
function beginRecording()
{
if(RECORD_BIT == 1)
{
processPageData();
}
}
function processPageData()
{
var i
var obj = document
var posArray = new Array();
var allElement = obj.getElementsByTagName("*");
var dataArrayString = "";
for(i=0; i < allElement.length; i++)
{
if (allElement[i].getAttribute('id') != null && allElement[i].getAttribute('id') != "")
{
posArray[posArray.length] = allElement[i].getAttribute('id');
}
}
for(i = 0 ; i < posArray.length ; i++)
{
dataArrayString = dataArrayString+"SET "+posArray[i]+"="+getValueFromPage(posArray[i]);
}
writePostData(dataArrayString);
}
函数writePostData通过记录DOM元素上的内容来执行ajax并在服务器上写入/更新文件,并且我发送了更多细节,例如GET/POST或页面名称等。
beginRecording() 在 javascript 以 document.forms[0].submit() 提交之前在页面上调用,以便它可以捕获 POST。
我阅读了有关跨域ajax的信息,但我仍然不确定如何在不将脚本添加到该文件的情况下监视任何外部网站的HTTP(读取GET/POST和页面或URL上的数据),并写入文件
任何帮助或指导都会很棒。
您不能在远程站点上包含javascript,也不能监视其HTTP请求 这两件事对安全都是灾难性的......
相关文章:
- Meteor如何接收HTTP请求
- 在我的情况下,如何进行http请求
- 使用插件收听Firefox标签的http请求
- http请求使用html而不是json进行响应
- 在node-js路由中发出http请求
- 是否可以在没有HTTP请求或<输入>
- Acync JS HTTP请求通知请求
- PhantomJs在控制台中发出http请求时不会返回任何状态
- PHP处理来自一个页面的http请求,并将其显示在另一个页面上
- Firefox插件-如何发出http请求
- 验收测试主要针对传出的http请求
- 验证HTTP请求来自NFC标签上的点击
- 如何制作'http请求'在Node js中同步
- 为什么我在Cloud9中的http请求总是返回错误
- AngularJS Typeahead和$http请求限制
- HTTP请求使用cURL,但在浏览器中使用javascript时会得到CORS响应
- 如何使用Chrome扩展API获取网页的所有HTTP请求
- 将http请求中的数据传递给C#控制器
- 在初始化路由之前发送$http请求
- 从客户端捕获 HTTP 请求(包括 ajax)