如何使用 GET 方法将数据发送到另一个域?

How to send data with GET method to another domain?

我的 Javascript 文件生成一个 JSON 并且有一些必要的值我想将其发送到 link www.leaderpush.com/Send/Getjson?Endpoint=endpoint&P256dh=p256dh&Auth=auth

var obj = JSON.parse(t);
var endpoint = obj.endpoint;
var p256dh = obj.keys.p256dh;
var auth = obj.keys.auth;

但是我无法将它发送到另一个域。当我尝试时,发送的 URL 变为 www.AnyDomain.com/www.leaderpush.com/Send...

你有什么建议?

您需要正确格式化 URL。

url = "//www.leaderpush.com/Send/Getjson?Endpoint=endpoint&P256dh=p256dh&Auth=auth";

需要//开头,表示后面是URL的域名,否则视为相对于当前URL的文件名。

顺便说一句,如果其他域禁止 CORS,这仍然可能不起作用。您可能需要从您的服务器而不是客户端发出请求。

由于你没有在请求中提到协议absolutely(HTTP / HTTPS) or relatively(//) URL,浏览器将其视为路径并在请求URL之后附加源域。并且请求域似乎不支持并且没有有效的 HTTPS 证书,因此请确保您的原始域是 HTTP 并且请求域 (//www.leaderpush.com) 支持 CORS。

Note: Try including crossDomain: true in $.ajax() request header, in case the target server might serve on request to enable cross domain to the client.