Question: For a client's website there is an ACF WYSIWYG editor field on the "edit category" backend that displays on the category page. For complicated reasons this is in addition to the category description field. They want to be able to do advanced layouts with this WYSIWYG using Visual Composer which is used elsewhere through out the site. 

Short of having them create the layout on a post or page and then copying and pasting over the shortcode, which is more than they'd be able to handle, I can't find a way to add Visual Composer to this WYSIWYG. I'd settle for adding it to the category description as well.

Answer: 
I personnaly fought with this for over two weeks before I landed on a post by @mp-loki -- [Angular 2 HTTP GET 404 Not Found for URL](https://stackoverflow.com/questions/41923209/angular-2-http-get-404-not-found-for-url) -- here on stackoverflow: The credit therefore really goes to him (or her, to be safe). 

On the Angular setup page (<https://angular.io/docs/ts/latest/guide/setup.html>), you are greeted with this sentence: "*Install the Angular QuickStart seed for faster, more efficient development on your machine.*"

You probably followed the instructions on that setup page and your project is therefore based on the *Angular QuickStart Seed*. 

There's nothing wrong with that, only that the tutorial given by Angular uses an **in-memory web api**, and that intercepts all requests to another web api, whether you make a direct call to the in-memory web api from your project code or not. 

To make requests to a different web api, you therefore have to disconnect from the in-memory web api. How? Just follow the steps below:

1. In your project root directory, expand **node\_modules** and delete the `angular-in-memory-web-api` directory
2. Still in your project root directory, open the **package.json** file and remove the following line from the list of dependencies: `"angular-in-memory-web-api": "~0.2.4",`
3. In the **src/app** directory, if the following files exit, or any files related to in-memory, delete them: `in-memory-data.service.ts`, `in-memory-data.service.js`, and `in-memory-data.service.js.map`
4. Open **src/app/app.module.ts** and remove the following from the list of imports: `import { InMemoryWebApiModule } from 'angular-in-memory-web-api';`, and `import { InMemoryDataService } from './in-memory-data.service';`
5. Still in **src/app/app.module.ts**, remove this line of code from the @NgModule annotation: `InMemoryWebApiModule.forRoot(InMemoryDataService),`
6. At this stage you should be able to make requests to your web api, but most likely the object returned doesn't have a **`data`** property, so you remove it from your service file: Replace:

> 
> 
> ```
> getHeroes(): Promise<Hero[]> {
>    return this.http.get(this.heroesUrl)
>                .toPromise()
>                .then(response => response.json().data as Hero[])
>                .catch(this.handleError);
> }
> 
> ```
> 
> 

with 

```
getHeroes(): Promise<Hero[]> {
   return this.http.get(this.heroesUrl)
               .toPromise()
               .then(response => response.json() as Hero[])
               .catch(this.handleError);
}

```

I hope this helps.
I had the same issue, after some frustrating researches I solved the 404 error thanks to [this](https://github.com/johnpapa/angular-tour-of-heroes/issues/94). The order of imports matters.  

Hope it helps someone.