Skip to content

Commit 7fb5c13

Browse files
Chris CastleGeorge Czabania
Chris Castle
authored and
George Czabania
committed
Clarify proxy instructions in generated app README (facebook#537)
* Clarify proxy instructions in generated app README * Add backticks to format text/html as code
1 parent 81b57e0 commit 7fb5c13

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

template/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -513,15 +513,15 @@ To tell the development server to proxy any unknown requests to your API server
513513
"proxy": "http://localhost:4000",
514514
```
515515
516-
This way, when you `fetch('/api/todos')` in development, the development server will recognize that it’s not a static asset, and will proxy your request to `http://localhost:4000/api/todos` as a fallback.
516+
This way, when you `fetch('/api/todos')` in development, the development server will recognize that it’s not a static asset, and will proxy your request to `http://localhost:4000/api/todos` as a fallback. The development server will only attempt to send requests without a `text/html` accept header to the proxy.
517517
518518
Conveniently, this avoids [CORS issues](http://stackoverflow.com/questions/21854516/understanding-ajax-cors-and-security-considerations) and error messages like this in development:
519519
520520
```
521521
Fetch API cannot load http://localhost:4000/api/todos. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
522522
```
523523
524-
Keep in mind that `proxy` only has effect in development (with `npm start`), and it is up to you to ensure that URLs like `/api/todos` point to the right thing in production. You don’t have to use the `/api` prefix. Any unrecognized request will be redirected to the specified `proxy`.
524+
Keep in mind that `proxy` only has effect in development (with `npm start`), and it is up to you to ensure that URLs like `/api/todos` point to the right thing in production. You don’t have to use the `/api` prefix. Any unrecognized request without a `text/html` accept header will be redirected to the specified `proxy`.
525525
526526
Currently the `proxy` option only handles HTTP requests, and it won’t proxy WebSocket connections.
527527
If the `proxy` option is **not** flexible enough for you, alternatively you can:

0 commit comments

Comments
 (0)