UNPKG

enc-webrtc

Version:

An utility which helps using web rtc.

44 lines (41 loc) 1.44 kB
export class Http { public headers: { name: string, value: string }[] = []; public get = (url: string): Promise<string> => { return this.request("GET", url); } public put = (url: string, data?: string): Promise<string> => { return this.request("PUT", url, data); } public post = (url: string, data?: string): Promise<string> => { return this.request("POST", url, data) } public delete = (url: string): Promise<string> => { return this.request("DELETE", url) } private request = (method: string, url: string, data?: string): Promise<string> => { return new Promise((resolve, reject) => { var xhr = new XMLHttpRequest(); xhr.onreadystatechange = () => { if (xhr.readyState == 4) { if (xhr.status == 200) { resolve(xhr.responseText); } else { reject(); } } }; xhr.open(method, url, true); if (this.headers) { for (const header of this.headers) { xhr.setRequestHeader(header.name, header.value); } } if (data) { xhr.send(data); } else { xhr.send(); } }); } }