======AjaxUtil====== =====Overview===== AjaxUtil is a utility class that uses XMLHttpRequest to send an Ajax request to a server. =====Methods===== ====ajaxRequest(options)==== ''Type:XMLHttpRequest'' ''Asynchronous'' ''Static'' Sends an ajax request to a server. ===Parameters=== ^Parameter^Type^Description^ |options. \\ ''Required''|Object|Ajax options. Has the following keys:| | "URL" \\ ''Required''|String|The URL to access.| | "method" \\ ''Required''|String|The HTTP medhod. Ex. GET, POST, PUT.| | "data"|Object|Data to send with the request.| | "headers"|Object|The object that contains headers to send with the request. Each item is passed to XMLHttpRequest.setRequestHeader().| ===Return Value=== XHR Object. ===Examples=== ==GET== let url = "https://api.example.com/members/1/" let method = "GET"; BITSMIST.v1.AjaxUtil.ajaxRequest({url:url, method:method}).then((xhr) => { console.log(xhr.responseText); }); ==POST== let url = "https://api.example.com/members/" let method = "POST"; let item = {"id":2, "name":"John"}; let headers = { "Content-Type":"application/json", "X-From": "www.example.com" }; let options = {"withCredentials":true}; BITSMIST.v1.AjaxUtil.ajaxRequest({ URL:url, method:method, data:item, headers:headers, options:options }).then((xhr) => { console.log(xhr.responseText); }); ---- ====loadScript(url, options)==== ''Type:Undefined'' ''Asynchronous'' ''Static'' Loads the script file from the server. The loaded script will be appended to the current page and executed. ===Parameters=== ^Parameter^Type^Description^ |url \\ ''Required''|String|The URL of the file.| |options|String|Load options. Has the following keys:| | "type"|String|The type of a script. Used as a value for the type attribute.| ===Return Value=== Undefined. ---- ====loadJSON(url, options)==== ''Type:Object'' ''Asynchronous'' ''Static'' Loads the JSON/Javascript object file from the specified URL. The loaded file will be converted to a Javascript object. You can specify whether the file is a JSON or Javascript object in the options parameter. If the format is not specified, the file is considered to be JSON if the extension is "json" and a Javascript object if the extension is "js". ===Parameters=== ^Parameter^Type^Description^ |url \\ ''Required''|String|The URL of the file.| |options|String|Load options. Has the following keys:| | "format"|String|The file format. "js" or "json".| ===Return Value=== The Javascript object that is converted from the content of the retrieved file. ---- ====loadText(url)==== ''Type:String'' ''Asynchronous'' ''Static'' Loads the text file from the specified URL. ===Parameters=== ^Parameter^Type^Description^ |url \\ ''Required''|String|The URL of the file.| ===Return Value=== The content of the retrieved file. ---- ====loadHTML(url)==== ''Type:String'' ''Asynchronous'' ''Static'' Loads the HTML file from the specified URL. ===Parameters=== ^Parameter^Type^Description^ |url \\ ''Required''|String|The URL of the file.| ===Return Value=== The content of the retrieved file. ---- ====loadCSS(url)==== ''Type:String'' ''Asynchronous'' ''Static'' Loads the CSS file from the specified URL. ===Parameters=== ^Parameter^Type^Description^ |url \\ ''Required''|String|The URL of the file.| ===Return Value=== The content of the retrieved file. ---- ====loadClass(url, options)==== ''Type:Undefined'' ''Asynchronous'' ''Static'' Loads the class files from the specified URL. The loaded class files will be appended to the current page and executed. Do not **add an extension** to the URL argument. The library will automatically add the extension ".js" and load it. If the "splitClass" option is true, two files will be loaded, first ".js" and then ".settings.js". ===Parameters=== ^Parameter^Type^Description^ |url \\ ''Required''|String|The URL of the file without extension.| |options|String|Load options. Passed to [[#loadscript_url_options|loadScript()]].| ===Return Value=== Undefined.