Deliver web apps with confidence 🚀
Find a file
Alex Rickabaugh 120bdeecdc fix(common): allow HttpInterceptors to inject HttpClient (#19809)
Previously, an interceptor attempting to inject HttpClient directly
would receive a circular dependency error, as HttpClient was
constructed via a factory which injected the interceptor instances.
Users want to inject HttpClient into interceptors to make supporting
requests (ex: to retrieve an authentication token). Currently this is
only possible by injecting the Injector and using it to resolve
HttpClient at request time.

Either HttpClient or the user has to deal specially with the circular
dependency. This change moves that responsibility into HttpClient
itself. By utilizing a new class HttpInterceptingHandler which lazily
loads the set of interceptors at request time, it's possible to inject
HttpClient directly into interceptors as construction of HttpClient no
longer requires the interceptor chain to be constructed.

Fixes #18224.

PR Close #19809
2018-01-29 16:12:32 -08:00
.circleci build: Remove angular_src nested workspace (#21096) 2018-01-19 10:17:37 -08:00
.github ci: add github bot config to triage issues (#21672) 2018-01-19 20:39:58 -08:00
aio fix(aio): missing plural s in preserveWhiteSpaces example (#21854) 2018-01-29 11:35:13 -08:00
docs docs: document debugging a Node test in VSCode/Bazel (#21868) 2018-01-29 16:11:09 -08:00
integration perf(ivy): use buildOptimizer in hello_world__render3__rollup integration test (#21744) 2018-01-29 11:35:51 -08:00
modules refactor(ivy): move onDestroys out of cleanup (#21650) 2018-01-24 22:14:33 -08:00
packages fix(common): allow HttpInterceptors to inject HttpClient (#19809) 2018-01-29 16:12:32 -08:00
scripts build: merge-pr now checks that PR status is green before proceeding (#21810) 2018-01-26 14:50:41 -08:00
tools feat(router): add navigationSource and restoredState to NavigationStart event (#21728) 2018-01-29 10:22:59 -08:00
.bowerrc chore(dgeni): clean up legacy typings bundle creation 2015-10-29 21:19:59 +00:00
.clang-format feat(tooling): Add a .clang-format for automated JavaScript formatting. 2015-04-02 08:44:34 -07:00
.editorconfig chore(.editorconfig): include markdown config 2015-01-27 00:14:48 -08:00
.gitattributes chore: force lf EOL for ts files (#11143) 2016-08-29 12:41:58 -07:00
.gitignore build(common): extract i18n locale data from cldr (#18284) 2017-08-22 15:43:04 -05:00
.mailmap build: add a Git .mailmap with my new name (#19550) 2017-10-09 14:35:30 -07:00
.nvmrc build: update node version number in .nvmrc (#20832) 2017-12-12 11:56:18 -08:00
.pullapprove.yml build: add mhevery to bazel approvers (#21314) 2018-01-17 17:02:22 -08:00
.travis.yml ci: use sudo: false on Travis (#21641) 2018-01-19 13:23:47 -08:00
bower.json docs: branding fixes (#14132) 2017-01-27 15:03:11 -06:00
browser-providers.conf.js build: remove required BrowserStack run as it fails with “Access denied” (#19769) 2017-10-17 15:51:40 -07:00
BUILD.bazel build: update to latest bazel rules (#21821) 2018-01-27 10:55:44 -08:00
build.sh build: Remove angular_src nested workspace (#21096) 2018-01-19 10:17:37 -08:00
CHANGELOG.md docs: add changelog for 6.0.0-beta.1 2018-01-24 22:01:19 -08:00
CONTRIBUTING.md docs: add notes on email used for CLA (#21754) 2018-01-26 10:28:18 -08:00
gulpfile.js test(packaging): added test for source map correctness 2017-09-12 16:59:32 -04:00
karma-js.conf.js feat(compiler): implement "enableIvy" compiler option (#21427) 2018-01-18 18:22:44 -06:00
LICENSE docs(common): update copyright years (#21232) 2018-01-04 17:45:36 -05:00
package.json release: cut the 6.0.0-beta.1 release 2018-01-24 21:58:09 -08:00
protractor-e2e.conf.js refactor: add license header to JS files & format files (#12081) 2016-10-04 20:39:20 -07:00
protractor-examples-e2e.conf.js refactor: format and lint code 2016-12-12 11:30:25 -08:00
protractor-perf.conf.js refactor: add license header to JS files & format files (#12081) 2016-10-04 20:39:20 -07:00
README.md docs: remove broken issuestats.com badges (#21334) 2018-01-05 14:43:18 -05:00
shims_for_IE.js Revert "refactor: add license header to JS files & format files (#12035)" 2016-10-04 14:06:41 -07:00
test-events.js fix(platform-browser): run BLACK_LISTED_EVENTS outside of ngZone (#18993) 2017-09-05 15:33:22 -05:00
test-main.js build: add bazel test rules for remainder of packages (#21053) 2017-12-22 13:10:51 -08:00
test.sh build: remove references to tsc-wrapped (#19298) 2017-09-21 13:55:52 -07:00
tslint.json build: add lint rule for global flags in rollup config (#20028) 2017-10-30 23:09:16 -04:00
WORKSPACE build: update to latest bazel rules (#21821) 2018-01-27 10:55:44 -08:00
yarn.lock build: upgrade to TypeScript 2.6 (#21144) 2017-12-22 20:15:47 -08:00
yarn.lock.readme.md build: switch from npm to yarn (#19328) 2017-09-22 13:20:52 -07:00

Build Status CircleCI BrowserStack Status Join the chat at https://gitter.im/angular/angular npm version

Sauce Test Status

Safari (7+), iOS (7+) and IE mobile (11) are tested on BrowserStack.

Angular

Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScript and other languages.

Quickstart

Get started in 5 minutes.

Want to help?

Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues in the hotlist: community-help.