add specific message for failure to convert to JSON
This commit is contained in:
		
							parent
							
								
									a377d28da8
								
							
						
					
					
						commit
						eedd53aba4
					
				
					 1 changed files with 11 additions and 11 deletions
				
			
		|  | @ -8,7 +8,7 @@ import logging from "/scripts/logging.js"; | ||||||
| export default class net { | export default class net { | ||||||
| 	/* | 	/* | ||||||
| 	Download a file from the network or locally. | 	Download a file from the network or locally. | ||||||
| 	 | 
 | ||||||
| 	@param {string} URL the URL to download | 	@param {string} URL the URL to download | ||||||
| 	@param {string} TYPE the expected TYPE of file | 	@param {string} TYPE the expected TYPE of file | ||||||
| 	@param {boolean} VERIFY_ONLY whether to verify the file only, not return its content | 	@param {boolean} VERIFY_ONLY whether to verify the file only, not return its content | ||||||
|  | @ -17,21 +17,21 @@ export default class net { | ||||||
| 	*/ | 	*/ | ||||||
| 	static async download(URL, TYPE, VERIFY_ONLY = false, STRICT = false) { | 	static async download(URL, TYPE, VERIFY_ONLY = false, STRICT = false) { | ||||||
| 		let CONNECT, DATA; | 		let CONNECT, DATA; | ||||||
| 		let HEADERS = {};  | 		let HEADERS = {}; | ||||||
| 		 | 
 | ||||||
| 		// If TYPE is used as headers, then the other parts of the header should be taken out for later usage. 
 | 		// If TYPE is used as headers, then the other parts of the header should be taken out for later usage.
 | ||||||
| 		if (TYPE && (typeof TYPE).includes(`obj`)) { | 		if (TYPE && (typeof TYPE).includes(`obj`)) { | ||||||
| 			HEADERS = TYPE; | 			HEADERS = TYPE; | ||||||
| 			TYPE = HEADERS[`Content-Type`]; | 			TYPE = HEADERS[`Content-Type`]; | ||||||
| 		} | 		} | ||||||
| 		 | 
 | ||||||
| 		try { | 		try { | ||||||
| 			// Fetch the file. Add headers when defined. 
 | 			// Fetch the file. Add headers when defined.
 | ||||||
| 			(Object.keys(HEADERS).length) ? CONNECT = await fetch(URL, {method: `POST`, headers: HEADERS}) : CONNECT = await fetch(URL); | 			(Object.keys(HEADERS).length) ? CONNECT = await fetch(URL, {method: `POST`, headers: HEADERS}) : CONNECT = await fetch(URL); | ||||||
| 			 | 
 | ||||||
| 			if (CONNECT.ok && !VERIFY_ONLY) { | 			if (CONNECT.ok && !VERIFY_ONLY) { | ||||||
| 				DATA = await CONNECT[(TYPE.toLowerCase().includes('blob')) ? `blob` : `text`](); | 				DATA = await CONNECT[(TYPE.toLowerCase().includes('blob')) ? `blob` : `text`](); | ||||||
| 			 | 
 | ||||||
| 				if (TYPE | 				if (TYPE | ||||||
| 						? (TYPE.toLowerCase().includes(`json`) || TYPE.toLowerCase().includes(`dictionary`)) | 						? (TYPE.toLowerCase().includes(`json`) || TYPE.toLowerCase().includes(`dictionary`)) | ||||||
| 						: false) { | 						: false) { | ||||||
|  | @ -40,9 +40,9 @@ export default class net { | ||||||
| 					} catch(err) { | 					} catch(err) { | ||||||
| 						// When not in JSON, run this.
 | 						// When not in JSON, run this.
 | ||||||
| 						if (STRICT) { | 						if (STRICT) { | ||||||
| 							// Should not allow the data to be returned since it's not correct. 
 | 							// Should not allow the data to be returned since it's not correct.
 | ||||||
| 							DATA = null; | 							DATA = null; | ||||||
| 							throw new TypeError(texts.localized(`error_msg_notJSON`, false)); | 							throw err; | ||||||
| 						} else { | 						} else { | ||||||
| 							logging.warn(texts.localized(`error_msg_notJSON`, false)); | 							logging.warn(texts.localized(`error_msg_notJSON`, false)); | ||||||
| 						} | 						} | ||||||
|  | @ -54,7 +54,7 @@ export default class net { | ||||||
| 		} catch(err) { | 		} catch(err) { | ||||||
| 			throw err; | 			throw err; | ||||||
| 		} | 		} | ||||||
| 	 | 
 | ||||||
| 		// Return the filter.
 | 		// Return the filter.
 | ||||||
| 		return VERIFY_ONLY ? CONNECT.ok : DATA; | 		return VERIFY_ONLY ? CONNECT.ok : DATA; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue