gpt4 book ai didi

php - .getJSON() 中的 jsoncallback 参数有什么用?

转载 作者:可可西里 更新时间:2023-11-01 00:47:38 27 4
gpt4 key购买 nike

在许多示例代码中,我看到 .getJSON() 的格式类似于

$.getJSON("url?jsoncallback=?", function(data){
...}

在后端的响应是这样写的

$response = $_GET["jsoncallback"]."(".json_encode($orders).")";
echo $reponse

我删除“?jsoncallback=?”从后端的 url 和 $_GET["jsoncallback"] 和方括号来看,似乎一切仍然有效。那么 jsoncallback 东西到底有什么用呢?

最佳答案

如果您没有 jsoncallback=?它只会执行普通的 JSON 请求,而不是 JSONP*。您可以在自己的服务器或发送 CORS 的服务器上执行正常的 JSON 请求。标题。


* 忘记 JSONP,这是一个奇特的名称,用于在您的文档中插入一个脚本元素,该元素运行来自外部服务器的代码,但具有与您自己的脚本相同的授权。 $_GET["jsoncallback"] , 使其成为这样的 javascript 函数调用:

fn({"data": "value"});

这是脚本中的代码,如 <script src="http://foreign.org/data?jsoncallback=fn"></script> .如您所见,那是 Javascript,而不是 JSON。有了这个,foreign.org(或黑客攻击他们的人)可以更改他们的脚本以在您的页面上执行任何授权,因此在使用“JSONP”时要小心并且更喜欢 CORS JSON。

关于php - .getJSON() 中的 jsoncallback 参数有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14313365/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com