我使用以下代码来使用从输入表单创建的一组动态参数请求远程服务器JSON。请求工作正常,但我要做的是获取发送的请求URL的字符串。
代码看起来如下:
$.getJSON(URL1, params1, function (data) {
console.log(data);
});
URL1是一个变量,它具有我请求的域的基值:
var URL1 = "www.domain.com/api/stuff4stuff?jsonp=true&jcb=?"
params1只是一个普通的KVP对象:
var Params1 = {APIINFO:12345,account:8675309}
就像我说的,我的调用运行良好,我想要的是获取并输出JQuery生成并发送请求的URL,包括它发送的随机JQuery代码。
我正在寻找的URL看起来会像这样,我可以在控制台的网络选项卡中查看它,但是我需要在代码中找到它,这样我就可以显示它并将它作为变量使用。
=1405403521002
首先要说明的是,我并不是在寻找由我的请求引发的当前JQuery,我可以很好地获得浏览器窗口URL,我正在寻找它与一起发送的实际的JSON。
发布于 2014-07-15 22:21:59
您可能需要的是beforeSend(xhr,平原)- 小提琴
$.ajax({
url: url,
dataType: "jsonp",
jsonp:"jcb",
//jsonpCallback: "setYourCallback",
data:params,
beforeSend: function( xhr, plain) {
console.log(xhr);
$('.out').text(plain.url);
}
})
.done(function( data ) { . . .
发布于 2014-07-15 19:15:53
我想您想要在PHP代码中获得它,而不是在javascript代码中?
如果您确信请求不会通过SSL:
$json_url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
如果请求可能来自SSL,那么您需要检测到它:
$json_url = $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
if(isset($_SERVER['HTTPS']) && $_SERVER["HTTPS"] == "on") {
$json_url = 'https://' . $json_url;
} else {
$json_url = 'http://' . $json_url;
}
https://stackoverflow.com/questions/24764888
复制相似问题