我试图加载这个公共API:
Origin http://localhost:8000 is not allowed by Access-Control-Allow-Origin.
如何在不使用JSONP的情况下执行此操作? api.paris.fr
不接受?callback =?
此外,由于api.paris.fr不是我的,我怎样才能做到这一点没有header("Access-Control-Allow-Origin: *");
?
我试图加载这个公共API:
Origin http://localhost:8000 is not allowed by Access-Control-Allow-Origin.
如何在不使用JSONP的情况下执行此操作? api.paris.fr
不接受?callback =?
此外,由于api.paris.fr不是我的,我怎样才能做到这一点没有header("Access-Control-Allow-Origin: *");
?
由于此标头Access-Control-Allow-Origin:https://api.paris.fr
浏览器不会让你这样做。作为解决方法,您可以使用代理。制作一个从原始源获取JSON并输出它的PHP脚本(或类似的)。
apiproxy.php
<?php
echo file_get_contents("https://api.paris.fr:3000/data/1.1/QueFaire/get_geo_activities/?token=3fc939c673e62e7a161ef036699c0a22bc1eed9f076da6236eaca89ab6ef4521&created=0&lat=48.8742&lon=2.3470&radius=1000&offset=0&limit=30");
jQuery的
$.get("http://yourserver.com/apiproxy.php", function(data) {
// use data
})
谢谢@ hein-andre-gronnestad它的工作。我添加了'header('Content-type:text/json'); header('Access-Control-Allow-Origin:*');'以及echo()之前的代理 –
@RaduChiriac这应该是个诀窍。不过你应该使用'Content-Type:application/json'。 –
您可以尝试$就({跨域:真})。不确定它有帮助。
顺便说一下,我无法访问该链接。 – mvw
该链接适用于我。 –
我现在看到它,通过VPN。请忽略我的评论。 – mvw