2017-08-30 33 views

回答

0

由於您不控制目標,唯一的解決方案是通過本地服務器代理請求。

要做到這一點,你會創造像PHP /節點的服務器端腳本這需要一個URL,並做了服務器到服務器的請求,獲得響應和輸出。您的Metascraper會調用您的本地服務器端腳本,傳遞目標URL。這是可行的,因爲服務器到服務器的調用不受CORS的限制。

如果確實發生了控制目標,那麼你就可以輸出CORS頭(訪問控制允許來源)來禁用每個人或域的白名單CORS。

0

你能分享錯誤,您在控制檯瀏覽器中得到?

我試圖做naver.com同樣的要求。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script> 
 
$(function(){ 
 
    $.get('https://www.naver.com/').then(function(response) { 
 
    console.log(response); 
 
    }); 
 
}) 
 
</script>

,並得到了一個錯誤:

XMLHttpRequest cannot load https://www.naver.com/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:9080' is therefore not allowed access.

因此,我們可以作出這樣的naver.com服務器不支持CORS的結論。 並且您試圖使用的庫沒有問題。