0

当我将 URI 放入 Web 浏览器时,我的服务器会输出此 JSON。我的客户端应用程序将使用 JSONP 获取此 JSON,因为它访问外部域。

{
"is_execution_successful":true,
"data": "something"
}

有没有办法在不包装响应的情况下执行 JSONP :

echo $_GET['json_callback']. '('. json_encode($rtnjsonobj) . ')';  

我无权编辑服务器输出。如何使用 AJAX/JQuery 获取 JSON?

我阅读的参考资料:http ://remysharp.com/2007/10/08/what-is-jsonp/

4

1 回答 1

3

JSONP 在技术上与 JSON 无关。它只是 JavaScript 代码。

因此,如果响应是有效的 JSON,那么当您将其作为 javascript (JSONP) 运行时,它不会做任何有用的事情。特别是在这种情况下,JSON 在作为 javascript 执行时会导致语法错误。

您可以向资源发出跨域 ajax 请求,但这只有在服务器发送此标头时才有可能:

Access-Control-Allow-Origin: *

星号当然可以替换为您的特定来源,它不必是通配符

于 2012-08-22T19:37:24.733 回答