Я очень новичок, так что извините, если я использую неправильную терминологию. Я пытаюсь получить данные с помощью Trello API, но получаю следующую ошибку в консоли Chrome:
Не удалось загрузить https://api.trello.com/1/cards/5a42e19364345a7d84ba3f5f/members: значение заголовка «Access-Control-Allow-Origin» в ответе не должно быть подстановочным знаком «*», если режим учетных данных запроса «включить». Таким образом, доступ к источнику 'http://localhost:8080' запрещен. Режим учетных данных запросов, инициированных XMLHttpRequest, управляется атрибутом withCredentials.
Проведя некоторое исследование, я обнаружил, что это проблема CORS. Я использую Google App Engine с Python. Я могу исправить эту ошибку или это ошибка API? Мне удалось сделать запрос POST с помощью этого API без проблем. Я прочитал много информации о CORS, но не нашел решения проблемы.
Вот мой код Javascript для запроса GET, он просто копируется/вставляется из API Trello, поэтому я не уверен, что не так:
var authenticationSuccess = function() {
console.log('Successful authentication');
};
var authenticationFailure = function() {
console.log('Failed authentication');
};
window.Trello.authorize({
type: 'popup',
name: 'Work Requests App',
scope: {
read: 'true',
write: 'true' },
expiration: 'never',
success: authenticationSuccess,
error: authenticationFailure
});
var data = JSON.stringify(false);
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://api.trello.com/1/cards/5a42e1936434a7d84ba3f5f/members");
xhr.send(data);
withCredentials = true
? Знаете ли вы, что он делает? - person Phil   schedule 27.12.2017client.js
API для выполнения запросы? Предположительно он сохраняет требуемые учетные данные после авторизации и добавляет их в запрос в качестве параметров/заголовков. Кроме того, я бы сказал, что вам нужно будет выполнить эти действия после успешной авторизации (т.е. в обратном вызовеauthenticationSuccess
) - person Phil   schedule 27.12.2017client.js
, так как он включен в мой HTML<script src="https://api.trello.com/1/client.js?key={key}"></script>
, все остальное в моем javascript скопировано из их документации с добавлением соответствующих ключей. - person user9109814   schedule 27.12.2017XMLHttpRequest
в своем коде и пытаетесь его использовать. Вы должны использоватьTrello.members.get('5a42e1936434a7d84ba3f5f', members => { ... })
или что-то подобное. - person Phil   schedule 27.12.2017Trello
методы объекта. - person Phil   schedule 27.12.2017