如何通过href发送javascript对象

如何通过href发送javascript对象,javascript,Javascript,我正在构建一个javascript脚本,它将出现在一些网站(客户端)上,获取一些信息并返回到我的主页。因为每个网站都有点不同,所以我需要用纯javascript来实现这一点。我希望它工作的方式是收集信息并将其存储在对象(我正在工作)中,然后使用window.location.href将其发送到主页。在不知道每个站点上有什么可用的情况下(例如,他们可能没有JQuery),最好的方法是什么 它发送到的页面是一个php脚本 对象的示例 var obj = { page_on:window.lo

我正在构建一个javascript脚本,它将出现在一些网站(客户端)上,获取一些信息并返回到我的主页。因为每个网站都有点不同,所以我需要用纯javascript来实现这一点。我希望它工作的方式是收集信息并将其存储在对象(我正在工作)中,然后使用window.location.href将其发送到主页。在不知道每个站点上有什么可用的情况下(例如,他们可能没有JQuery),最好的方法是什么

它发送到的页面是一个php脚本

对象的示例

var obj = {
    page_on:window.location.pathname,
    loadtime:loadtime,
};
然后我想在函数中发送回家(这样我可以在不同的地方重用)

上面的代码不起作用,我现在就在这里。我需要对obj做点什么。我不太擅长javascript


谢谢

您需要先序列化对象。然后可以使用将数据发送到服务器

请注意,当您的服务器位于不同于您希望从中运行JavaScript的网站的域(听起来是这样的)时,您也需要在服务器上启用

如果服务器上启用了CORS,下面是发送数据的脚本示例:

var obj = {
  url: window.location.href,
  loadTime: loadtime
};

var req = new XMLHttpRequest();
req.open('POST', 'https://yourdomain.com/track');
req.setRequestHeader("Content-Type", "application/json");
req.send(JSON.stringify(obj));

两大问题:一,。如果您设置
window.location.href
,将用户导航到该页面,远离他们试图查看的内容,那么您应该使用Ajax。2.您不能发送对象,但可以将该对象序列化为JSON并提交JSON。不能使用Ajax,但可以使用。
var obj = {
  url: window.location.href,
  loadTime: loadtime
};

var req = new XMLHttpRequest();
req.open('POST', 'https://yourdomain.com/track');
req.setRequestHeader("Content-Type", "application/json");
req.send(JSON.stringify(obj));