我試圖加載這個公共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