|
-
- function makeArvadosRequest(arvHost, arvToken, endpoint, method='GET', data=null,
- contentType='application/json;charset=utf-8', responseType='json') {
-
- let xhr = new XMLHttpRequest();
- xhr.open(method, 'https://' + arvHost + endpoint);
- xhr.setRequestHeader('Authorization', 'OAuth2 ' + arvToken);
- if (data !== null)
- xhr.setRequestHeader('Content-Type', contentType);
- xhr.responseType = responseType;
-
- let res = new Promise((accept, reject) => {
- xhr.onreadystatechange = () => {
- if (xhr.readyState !== 4)
- return;
- if (xhr.status !== 200)
- reject(xhr);
- else
- accept(xhr);
- };
- xhr.send(data);
- });
-
- return res;
- }
-
- export default makeArvadosRequest;
|