diff options
Diffstat (limited to 'docs/examples/fetch_data.md')
-rw-r--r-- | docs/examples/fetch_data.md | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/docs/examples/fetch_data.md b/docs/examples/fetch_data.md new file mode 100644 index 000000000..ad47e90b1 --- /dev/null +++ b/docs/examples/fetch_data.md @@ -0,0 +1,46 @@ +# Fetch Data + +When building any sort of web application developers will usually need to +retrieve data from somewhere else on the web. This works no differently in Deno +than in any other JavaScript application, just call the the `fetch()` method. +For more information on fetch read the +[MDN documentation](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API). + +The exception with Deno occurs when running a script which makes a call over the +web. Deno is secure by default which means access to IO (Input / Output) is +prohibited. To make a call over the web Deno must be explicitly told it is ok to +do so. This is achieved by adding the `--allow-net` flag to the `deno run` +command. + +**Command:** `deno run --allow-net fetch.ts` + +```js +/** + * Output: JSON Data + */ +const json = fetch("https://api.github.com/users/denoland"); + +json.then((response) => { + return response.json(); +}).then((jsonData) => { + console.log(jsonData); +}); + +/** + * Output: HTML Data + */ +const text = fetch("https://deno.land/"); + +text.then((response) => { + return response.text(); +}).then((textData) => { + console.log(textData); +}); + +/** + * Output: Error Message + */ +const error = fetch("https://does.not.exist/"); + +error.catch((error) => console.log(error.message)); +``` |