Merge pull request #514 from Chalarangelo/XMLHttpRequest
[FEATURE] http requests snippets
This commit is contained in:
29
snippets/httpGet.md
Normal file
29
snippets/httpGet.md
Normal file
@ -0,0 +1,29 @@
|
||||
### httpGet
|
||||
|
||||
Makes a `GET` request to the passed URL.
|
||||
|
||||
Use [`XMLHttpRequest`](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest) web api to make a `get` request to the given `url`.
|
||||
Handle the `onload` event, by calling the given `callback` the `responseText`.
|
||||
Handle the `onerror` event, by running the provided `err` function.
|
||||
Omit the third argument, `err`, to log errors to the console's `error` stream by default.
|
||||
|
||||
```js
|
||||
const httpGet = (url, callback, err = console.error) => {
|
||||
const request = new XMLHttpRequest();
|
||||
request.open("GET", url, true);
|
||||
request.onload = () => callback(request.responseText);
|
||||
request.onerror = () => err(request);
|
||||
request.send();
|
||||
};
|
||||
```
|
||||
|
||||
```js
|
||||
httpGet('https://jsonplaceholder.typicode.com/posts/1', console.log); /*
|
||||
Logs: {
|
||||
"userId": 1,
|
||||
"id": 1,
|
||||
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
|
||||
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
|
||||
}
|
||||
*/
|
||||
```
|
||||
39
snippets/httpPost.md
Normal file
39
snippets/httpPost.md
Normal file
@ -0,0 +1,39 @@
|
||||
### httpPost
|
||||
|
||||
Makes a `POST` request to the passed URL.
|
||||
|
||||
Use [`XMLHttpRequest`](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest) web api to make a `post` request to the given `url`.
|
||||
Set the value of an `HTTP` request header with `setRequestHeader` method.
|
||||
Handle the `onload` event, by calling the given `callback` the `responseText`.
|
||||
Handle the `onerror` event, by running the provided `err` function.
|
||||
Omit the third argument, `data`, to send no data to the provided `url`.
|
||||
Omit the fourth argument, `err`, to log errors to the console's `error` stream by default.
|
||||
|
||||
```js
|
||||
const httpPost = (url, callback, data = null, err = console.error) => {
|
||||
const request = new XMLHttpRequest();
|
||||
request.open("POST", url, true);
|
||||
request.setRequestHeader('Content-type','application/json; charset=utf-8');
|
||||
request.onload = () => callback(request.responseText);
|
||||
request.onerror = () => err(request);
|
||||
request.send(data);
|
||||
};
|
||||
```
|
||||
|
||||
```js
|
||||
const newPost = {
|
||||
"userId": 1,
|
||||
"id": 1337,
|
||||
"title": "Foo",
|
||||
"body": "bar bar bar"
|
||||
};
|
||||
const data = JSON.stringify(newPost);
|
||||
httpPost('https://jsonplaceholder.typicode.com/posts', console.log, data; /*
|
||||
Logs: {
|
||||
"userId": 1,
|
||||
"id": 1337,
|
||||
"title": "Foo",
|
||||
"body": "bar bar bar"
|
||||
}
|
||||
*/
|
||||
```
|
||||
Reference in New Issue
Block a user