Tag: angularjs http

在AngularJS中使用Promises的成功/错误/ finally / catch

我在AngularJs中使用$http ,我不确定如何使用返回的promise和处理错误。 我有这个代码: $http .get(url) .success(function(data) { // Handle data }) .error(function(data, status) { // Handle HTTP error }) .finally(function() { // Execute logic independent of success/error }) .catch(function(error) { // Catch and handle exceptions from success/error/finally functions }); 这是一个好办法吗?还是有一个更简单的方法?

AngularJS没有检测到Access-Control-Allow-Origin头文件?

我在本地虚拟主机( http://foo.app:8000 )上运行一个angular度的应用程序。 它使用$http.post向另一个本地VirtualHost( http://bar.app:8000 )发出请求。 $http.post('http://bar.app:8000/mobile/reply', reply, {withCredentials: true}); 在Chrome开发者工具的networking选项卡中,我当然会看到OPTIONS请求,响应中包含标题: Access-Control-Allow-Origin: http://foo.app:8000 但是,POST请求被取消,出现以下错误: 请求的资源上没有“Access-Control-Allow-Origin”标题。 Origin'http: //foo.app:8000 '因此不被允许访问。 有没有人经历过这个? Access-Control-Allow-Origin头部非常清楚地包含在OPTIONS请求的响应中,所以我不能为了让我知道为什么POST正在执行头部丢失。 Access-Control-Allow-Credentials也设置为true 。

“Access-Control-Allow-Origin”标题包含多个值

我在客户端使用AngularJS $ http访问服务器端的ASP.NET Web API应用程序的端点。 由于客户端与服务器位于不同的域,因此我需要CORS。 它适用于$ http.post(url,数据)。 但只要我authentication用户,并通过$ http.get(url)发出请求,我收到消息 “Access-Control-Allow-Origin”头包含多个值“http://127.0.0.1:9000,http://127.0.0.1:9000”,但只允许有一个值。 原因'http://127.0.0.1:9000'因此不被允许访问。 提琴手向我展示,在获得成功的选项请求后,确实有两个标题条目。 什么和我在哪里做错了什么? 更新 当我使用jQuery $ .get而不是$ http.get时,出现相同的错误信息。 所以这对于AngularJS来说似乎没有问题。 但是哪里错了?

二进制文件损坏 – 如何使用AngularJS下载二进制文件

使用ResponseEntity以angular度下载任何文件不起作用 我需要在客户端使用angular度下载文件,这个文件可以有任何格式,它可能是一个PDF或Excel或图像或​​TXT …我的方法只适用于TXT文件,并给我一个失败格式的Excel和图像和为PDF提供了一个空的PDF。 所以在我的控制器中这里是调用服务方法的函数: vm.downloadFile = downloadFile; function downloadFile(file){ var urlDir = "C://STCI//"+idpeticion; return VerDocServices.downloadFile(file,urlDir) .then(function(response) { var data = response.data; var filename = file; var contentType = 'application/octet-stream';//octet-stream var linkElement = document.createElement('a'); try { var blob = new Blob([ data ], { type : contentType }); var url = window.URL.createObjectURL(blob); linkElement.setAttribute('href', url); linkElement.setAttribute("download", filename); […]

如何在AngularJs中启用CORS

我已经使用JavaScript为Flickr照片searchAPI创build了一个演示。 现在我把它转换成AngularJs。 我在互联网上search,find下面的configuration。 组态: myApp.config(function($httpProvider) { $httpProvider.defaults.useXDomain = true; delete $httpProvider.defaults.headers.common['X-Requested-With']; }); 服务: myApp.service('dataService', function($http) { delete $http.defaults.headers.common['X-Requested-With']; this.flickrPhotoSearch = function() { return $http({ method: 'GET', url: 'http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=3f807259749363aaa29c76012fa93945&tags=india&format=json&callback=?', dataType: 'jsonp', headers: {'Authorization': 'Token token=xxxxYYYYZzzz'} }); } }); 控制器: myApp.controller('flickrController', function($scope, dataService) { $scope.data = null; dataService.flickrPhotoSearch().then(function(dataResponse) { $scope.data = dataResponse; console.log($scope.data); }); }); 但是我仍然有同样的错误。 这里有一些我试过的链接: […]

为什么angular度的$ http成功/错误方法不推荐使用? 从v1.6中删除?

angular度文档有$http success和error方法的弃用声明。 这个抽象是从图书馆中删除的有一个特定的原因吗?