如何使用 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.
我的 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.