Итак, я возился с разработкой приложения Spotify, пытаясь заставить его общаться с моим локальным API приложения rails. Я не могу получить ничего, кроме req.status 0, когда пытаюсь это сделать.
Я думаю, что это либо проблема с файлом Spotify manifest.json, не позволяющим порту: 3000 переходить по URL-адресу, который вы указали в необходимых разрешениях, но в их документации также говорится следующее.
https://developer.spotify.com/technologies/apps/tutorial/
Если вам нужно обратиться к внешнему веб-API, вы можете это сделать, если вы соблюдаете правила, установленные в Руководстве по интеграции. Обратите внимание, что при взаимодействии с веб-API запросы будут исходить из источника sp://$APPNAME (в нашем примере это sp://tutorial) — убедитесь, что служба, с которой вы общаетесь, принимает запросы из такого источника.
Итак, я не уверен, настроены ли рельсы, чтобы не допускать такого рода вещи, или это проблема с помещением порта в требуемые разрешения, но мой запрос
var req = new XMLHttpRequest();
req.open("GET", "http://127.0.0.1:3000/api/spotify/track/1.json", true);
console.log(req);
req.onreadystatechange = function() {
console.log(req.status);
console.log(req.readyState);
if (req.readyState == 4) {
if (req.status == 200) {
console.log("Search complete!");
console.log(req.responseText);
}
}
};
req.send();
Всегда возвращает статус 0, где в качестве примера:
var req = new XMLHttpRequest();
req.open("GET", "http://ws.audioscrobbler.com/2.0/?method=geo.getevents&location=" + city + "&api_key=YOUR_KEY_HERE", true);
req.onreadystatechange = function() {
console.log(req.status);
if (req.readyState == 4) {
console.log(req);
if (req.status == 200) {
console.log("Search complete!");
console.log(req.responseText);
}
}
};
req.send();
По крайней мере, вернет ответ 403. как будто запрос не выполняется или что-то в этом роде?
Кто-нибудь знает, что может происходить?
Очень признателен!
127.0.0.1:3000
допустимо только с вашего локального компьютера! - person Anthony Alberto   schedule 04.08.2012