2016-12-22 4 views
0

Я использую http://smmry.com/api для небольшого проекта. Я довольно новичок в AJAX и не могу его использовать. Вот то, что я до сих пор:Нужна помощь в работе с SMMRY API

var a = $.ajax({ 
    type:'POST', 
    url:'http://api.smmry.com/&SM_API_KEY=XXXXXXXX', 
    headers: {'Authorization': '["Expect:"]'}, 
    data: {'SM_URL':'https://en.wikipedia.org/wiki/Human%E2%80%93computer_interaction'}, 
    contentType:'application/json', 
    dataType: 'json', 
}); 

console.log(a); 

Ошибка я получаю:

XMLHttpRequest не может загрузить http://api.smmry.com/&SM_API_KEY=XXXXXXXX. Ответ на запрос перед полетом не проходит проверку контроля доступа. Нет заголовка «Access-Control-Allow-Origin» на запрошенном ресурсе. Поэтому исходный 'null' не допускается.

Я уверен, что это имеет какое-то отношение к заголовкам. Я понятия не имею, что делать и буду очень признателен, если кто-то может мне помочь!

ответ

0

Ошибка, которую вы получаете, связана с CORS. XMLHttpRequest отправляет запрос предварительной проверки, который не поддерживается API SMMRY, и это то, что должно быть включено на стороне сервера. Что вы можете сделать вместо этого?

Вы можете поговорить с их API через сервер, например. простой сервер узла. Затем вы отправляете XMLHttpRequest на свой собственный сервер, где вы разрешаете запрос перед полетом, предоставляя CORS (это простая строка кода на сервере Node/Express), и вы отправляете запрос в API SMMRY и отправляете ответ обратно на ваш сайт. Этот процесс называется «проксирование».

Смежные вопросы