当我将URI放入网络浏览器时,我的服务器输出此JSON。我的客户端应用程序将使用JSONP获取此JSON,因为它访问外部域。
{
"is_execution_successful":true,
"data": "something"
}
有没有办法像这样做一个JSONP 而不包装响应:
echo $_GET['json_callback']. '('. json_encode($rtnjsonobj) . ')';
我无权编辑服务器输出。如何使用AJAX / JQuery获取JSON?
答案 0 :(得分:3)
JSONP在技术上与JSON无关。这只是javascript代码。
因此,如果响应是有效的JSON,那么当您将其作为javascript(JSONP)运行时,它将不会执行任何有用的操作。特别是在这种情况下,JSON在以javascript执行时会导致语法错误。
您可以对资源进行跨源ajax请求,但只有在服务器发送此标头时才可以这样做:
Access-Control-Allow-Origin: *
当然,明星可以用您的特定原点替换,它不一定是通配符