GraphQL Ajax Получить запрос

Я пытаюсь понять, как написать запрос 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
              }
            }
          }`

person Elvira    schedule 22.12.2017    source источник


Ответы (1)


Задайте заголовки для ответа как access-control-allow-origin:*

person neattom    schedule 23.12.2017
comment
Хотя этот код может ответить на вопрос, обычно считается хорошей практикой добавить объяснение того, что делает ваш код. Это позволяет разработчикам, не разбирающимся в этой области, понять, что происходит в коде, и помогает им научиться решать проблему самостоятельно в будущем. - person Caleb Kleveter; 24.12.2017