jabrik
@jabrik

VK блокирует fetch 'GET' запрос. Как решить?

Мне нужно получить json response с вконтакте. Есть специальный API.

Вот ссылка: 'https://api.vk.com/method/friends.getSuggestions?f...'+$filter+'&fields='+$fields+'&count=500&access_token='+$token+'&v=5.103'

Но методом fetch и xhr, вконтакте блокирует запрос с таким ответом: "Access to XMLHttpRequest at 'https://api.vk.com/method/friends.getSuggestions?f...' from origin 'vk' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource."

Как решить? На php решается очень просто, с таким запросом: json_decode(file_get_contents('https://api.vk.com/method/friends.getSuggestions?f...'.$filter.'&fields='.$fields.'&count=500&access_token='.$token.'&v=5.103'));

Вот код с ошибкой на JavaScript: 5e62146167be4705711959.png

И вот с php, где нет ошибки: 5e6214e8d490d545565785.png
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
jabrik
@jabrik Автор вопроса
Спасибо всем, вопрос решен. Решил вопрос с jquery.
С таким кодом:
$.ajax({
url: 'https://api.vk.com/method/friends.getSuggestions?f...'+$filter+'&fields='+$fields+'&count=500&access_token='+$token+'&v=5.103',
type: 'GET',
dataType: 'jsonp',
crossDomain: true,
success: function(data){
console.log(data.response);
}
})
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
проблема возникает из-за отправки запроса option, перед отправкой основного запроса
попробуйте поменять эту строчку x.open("GET", url, true);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы