Я использую Request Bin для публикации некоторых данных. В моем контроллере у меня есть следующий код:
$http.post('http://requestb.in/redacted', fooBar).
success(function(data) {
$scope.fooBarPostedSuccess = true;
}).
error(function(err) {
console.log("Error while posting to Request Bin");
console.log("Error Info : " + err);
});
Это активируется с помощью кнопки на пользовательском интерфейсе. Теперь, когда это сработал, данные не отвечал на запрос Bin, и я получаю эту ошибку:
XMLHttpRequest cannot load http://requestb.in/redacted.
Origin http://localhost:3000 is not allowed by Access-Control-Allow-Origin.
Как размещать данные запрашивать бен через AngularJS контроллер? Кроме того, что означает вышеупомянутая ошибка?
EDIT: Я хочу добавить здесь, что я использую Node.js с AngularJS. Возможно, это что-то связано с Нодом?
К сожалению, ни один из них не работал - как я понимаю, jsonp [не может использоваться для запросов POST] (http://stackoverflow.com/a/3860117/2104976). Последнее тоже не сработало - я думаю, что сделал это неправильно. Есть ли блог, который показывает, как делать запросы POST на внешние веб-сайты в узле, который вы рекомендуете? – callmekatootie
Справа. Вы можете использовать POST только на другом сервере, используя CORS, если сервер разрешает это. JSONP на самом деле просто GET под капотом. Но если ваш API поддерживает его, тогда вам не нужно пытаться. Вы используете '$ http.jsonp'. –
Проксирование через узел ... вот вопрос о нем: http://stackoverflow.com/questions/10166277/proxy-http-request-with-node –