问题标签 [angular-httpclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
13411 浏览

angular - 在 Angular 5 上等待 Guard 内部的 http

我在 Angular 应用程序上使用 Guard 来解析初始关键数据。在 Angular 的第 4 版上,我是这样处理的:

由于Angular 5 上的新版本 Http不再使用该.map()属性,因此这不起作用。

如果我更改.map().subscribe()不会引发任何错误,但应用程序永远不会正确解决。另一方面,使用.first()和/或.map()抛出一些错误,正如在这个版本中所预期的那样。

在这种情况下我该怎么办?

仅当加载初始数据时,我才需要激活该路由。


编辑以添加有关该apiGet功能的信息:

0 投票
0 回答
672 浏览

json - Angular 4:用 json HttpClient 响应填充复杂模型

我正在尝试使用新的 API 调用的响应来填充模型HttpClientModule。但是,模型的属性不是“json 类型”而是复杂类型。

您是否知道我getByIdgetAll方法和ReferenceService返回的方法如何Observable匹配真实Reference对象而不仅仅是 json 对象?

这是我想做的一个例子。

谢谢 !

`

0 投票
2 回答
6416 浏览

javascript - 带有重试和延迟的 Angular HttpClient 请求正在发送一个额外的请求,然后将其取消

我正在尝试使用Angulars HttpClient服务通过多次尝试和中间延迟来发出请求。该代码有效,但我在 devTools 网络点击中注意到最终发送并取消了额外的请求。我在这里做错了什么是代码:

这是FirefoxChrome网络选项卡的图像,应该有三个请求,但它发出了四个并取消了最后一个 在此处输入图像描述

0 投票
2 回答
7279 浏览

angular - 在 Angular 5 中将 Http 升级到 HttpClient:“服务器响应状态为 415(不支持的媒体类型)”

我已将应用程序从 Angular 4.2 升级到 5,但在更改HttpHttpClientPOST 请求时出错:

错误服务器响应状态为 415(不支持的媒体类型)

app.module我已经导入HttpClientModule

旧代码:

新代码:

谢谢

0 投票
1 回答
565 浏览

angular-httpclient - Angular 4 HttpClient 未设置参数或标头

不知道我在这里做错了什么。代码非常简单。

我在请求标头中看到的是:

我什至没有看到任何应该有的参数。

我不知道这是否有帮助,但我在httpOptions控制台中的对象中看到的内容显示了标题headers.lazyUpdate和参数,params.updates其中是我设置的 4 个参数的数组。

我的例子已经用完了;http认为向后退并使用而不是httpclient为此可能更容易。

0 投票
6 回答
27625 浏览

angular - Angular 5 - 无法为 HttpClient 设置标题

我正在尝试HttpClient在 Angular 5 项目中使用 POST 调用,并且我想设置标题:

出于某种原因,Content-Type标头似乎不在我提出的请求中。

在此处输入图像描述

为什么是这样?

0 投票
1 回答
1247 浏览

angular - Angular2 - 无法导入 http 模块

答案并没有帮助我正确导入 http 模块。



下面的代码,


和服务代码,


给出错误:


为什么HttpClient服务代码的构造函数中不能注入服务?

0 投票
1 回答
3841 浏览

angular - HttpClient:无法访问响应标头

在一个项目中,我们同时使用了 Http 和 HttpClient 来获取头部参数。Http 返回标头参数,但 HttpClient 不返回。

在控制台中检查时,http 返回带有标头的响应,但 httpClient 在标头中返回一个空数组。

在浏览器检查器的网络选项卡中检查时,它会显示所有标题参数。

服务器接受以下 CORS 选项:

请帮我弄清楚如何使用 httpClient 获取标头。

提前致谢。

0 投票
2 回答
6752 浏览

angular - 有没有办法改变 Angular 5 HttpInterceptor 中的响应?

对于我的应用程序,我创建了以下HttpInterceptor. 有没有办法从这里向请求订阅者返回响应的更改版本?

谢谢你。

0 投票
1 回答
67 浏览

angular - 无法通过 HttpInterceptor 通过服务推送数据

我创建了一个MessageService我将数据推送到其中,然后由我读取app.main以向用户显示这些消息的方法。当我在组件中使用此服务时,它工作正常。我想要做的是将其提升到HttpInterceptor将监视所有HttpResponse服务器消息并将它们推送到服务以供用户显示的级别。

这是我的服务:

这是我的 HttpInterceptor

这是我app.main读取数据的

通过一些控制台语句,我可以看到数据messageService.setMsgs(...)正确地进入了私有方法,但是app.main当我通过组件发送消息时,它永远不会像我一样到达我的位置。没有错误消息或任何东西,它只是不起作用。

我确实注意到的一件事是在MessageService.setMsgs(..)我为successMessageList. 当我通过组件添加消息时,我得到一个看起来像这样的输出(注意observers: Array(1)vs observers: Array(0)

但是当我通过添加消息时,HttpInterceptor我得到了这个

任何关于正在发生的事情的想法将不胜感激!

我正在使用 Angular 5