问题标签 [angular2-http]
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.
angular - 引导阶段的Angular 2自定义http错误处理程序服务注入问题
在 Angular 2 自定义 http 服务的文章之后:它还利用另一个自定义 http 错误服务来处理 http 错误代码和重新加载屏幕,此服务的代码在这里:
我想要实现的是使用以下方法将 401 错误重定向到登录路由:
但是,当我在 HttpErrorHandler 服务中注入 Router 服务时,会出现一些注入错误。
注意:上面的 HttpErrorHandler 是在应用程序的引导阶段配置的,如下所示:
不确定我是否在应用程序生命周期的早期注入了路由器服务。有没有办法在 HttpErrorHandler 服务中注入 Router 服务,以便可以使用客户端导航?
我在这里创建了一个 plnkr 也显示了错误。
angular - 如何在 Angular 2 中卷曲?
我正在使用 Parse REST API 使用 Angular2 获取一些数据,一切正常,但我需要按降序获取数据,返回 Parse 文档,应该执行以下操作:
我想在我的Angular2代码中模拟那个cURL,我主要需要的是实现:data-urlencode
目前,这是我的 Angular2 代码:
angular - 两次订阅 Angular 2 Http?
我想要一个调用 API 的服务,该 API 可以正确处理请求并对 API 请求执行标准错误处理。例如ApiErrorsService
,当任何 API 调用出错时,我想调用它。我还想以标准方式提交调用,即将 Content-Type 设置为 application/json 并序列化请求对象。
当然,当我订阅从Http
它返回的 observable 时,它会被调用一次,当我返回它并且调用者订阅它时,它会再次被调用。在不执行两次 API 调用的情况下,能够在两个地方监听结果的最佳方式是什么?我可以打电话.publish()
或.share()
退回吗?我需要然后处理它吗?是否会出现任何时间问题?如果我模拟 API 调用并立即返回一个值,那会正常工作,还是调用者的订阅会错过这些值?这是我的代码:
angular - 带有 HTTP 查询的 Angular2 动态组件加载器
我试图通过 HTTP GET 在一个组件中加载数据,然后我需要在动态加载的子组件中使用这些数据。
这是代码:
在子组件(HeaderComponent)中,我可以this.Account
用来获取这些数据。有一个更好的方法吗?
javascript - 如何以 Angular2 方式处理 ajaxStart 和 ajaxStop 事件
我需要触发类似于 JQuery 事件ajaxStart和ajaxStop
我在这里找到了一个半解决方案 ->
如何在 Angular2 中设置默认 HTTP 标头?
所以,目前我可以处理一个ajaxStart
事件。
任何解决方案如何处理ajaxStop
事件?
我尝试使用.catch()
,但它只触发 onError
我需要在 ajax 触发时调用我的动画加载程序,并在每次我使用 ajax 请求时停止时隐藏它。
所以我试图覆盖默认的ajax方法。但我找不到正确的可观察方法(
javascript - Angular2、子属性和猫王运算符
所以我有一个来自服务器的复杂日期模型来提供我的 Angular2 组件。下面显示了该组件模板的一小部分:
Address
可能是null
或undefined
取决于从服务器返回的数据。我知道 elvis 操作员会让我免于一个错误:
但不幸的是,它不会拯救我,[(ngModel)]="Person.Address.City"
因为没有为此定义猫王。如果你做类似的事情,你会得到一个解析器错误,如果你不这样[(ngModel)]="Person?.Address?.City"
做,你就会得到null
异常。
这里有两个最简单的数据变体,但可能还有更多:
或者...
由于处理这些场景的责任应该在 Angular2 而不是提供数据的服务器上,由于表示和业务逻辑的分离,我将如何处理这些场景?
angular - Angular2 在获取资源时监视 302 重定向
我需要从我公司持有的另一个域中提取一些资源。我想用 GET 请求提取安全的 HTML 内容。
当用户退出应用程序时,请求的内容将向登录页面返回 302。
到目前为止,我尝试嗅探 302 的标头并没有返回我希望的结果。我的 Observable 返回的响应是 200(登录页面)。
这是我的示例应用程序。
我什至走在正确的轨道上吗?
angular - Angular2经过身份验证的Web请求获取错误消息
我正在使用一个安全的 api,它要求我在每个请求上发送一个 Authorization 标头,这工作正常。但是,我在处理 401 响应时遇到了问题。
我对 API 的调用如下:
在错误中我可以看到响应代码 401,但是我还在 chrome 控制台中看到以下内容
有谁知道我怎样才能得到 angular 的消息文本?
谢谢,乔恩。
编辑:
我之前使用纯 ajax 调用了相同的方法,如下所示,并且可以获得错误文本。
javascript - Angular2 - TypeError:无法读取(Typescript)中未定义的属性“Id”
我收到以下错误:
抛出:
产品服务:
来自服务器的响应:
我在搞砸什么?