Я пытаюсь понять, как написать запрос GET graphQL Ajax. Когда я набираю полный URL в моем браузере I верните данные.
Однако, когда я хочу попытаться получить данные с помощью метода Ajax GET:
$.get({
url: 'https://ltbliqkb1c.execute-api.eu-west-1.amazonaws.com/thomas/query?query=%7B%20book(id:%229789024576807%22)%20%7B%20bol%20%7B%20id%20%7D%20itunes%20%7B%20beschikbaar%20%7D%20%7D%7D',
contentType: 'application/json',
crossDomain:true,
headers: {
'Access-Control-Allow-Origin': 'https://ltbliqkb1c.execute-api.eu-west-1.amazonaws.com/',
'Access-Control-Allow-Credentials': true
}
}).done(function(response) {
console.log('Data:', response.data);
});
Я получаю:
Не удалось загрузить https://ltbliqkb1c.execute-api.eu-west-1.amazonaws.com/thomas/query?query=%7B%20book(id:%229789024576807%22)%20%7B%20bol%20%7B%20id%20%7D%20itunes%20%7B%20beschikbaar%20%7D%20%7D%7D: поле заголовка запроса Access-Control-Allow-Origin не разрешено Access-Control-Allow-Headers в предпечатном ответе.
Мой запрос Graphql:
{
book(id: "9789024576791") {
bol {
id
}
itunes {
beschikbaar
}
}
}
Я также пробовал следующие js:
var test = JSON.stringify('{book(id:"9789047202363"){bol{id}}}')
$.ajax({
method: "GET",
url: "https://ltbliqkb1c.execute-api.eu-west-1.amazonaws.com/thomas/query?"+test,
contentType: "application/json",
crossDomain:true,
success: function(data) {
console.log('data',data);
},
error: function(err) {
console.log(err);
}
});
И со следующей переменной для строкового преобразования:
var test= ` book($id: String!){
bol{
id,
ean,
mobileUrl,
desktopUrl
}
itunes{
beschikbaar
auteur
titel
}
}
}`