Aller au contenu

Javascript -- window.webkitStorageInfo' is deprecated


Messages recommandés

Bonsoir, 

 

J'utilise un script qui fonctionne parfaitement bien sur chrome, mais qui est impossible a démarrer sur maxthon.

 

La console me renvoie cette erreure:

 

'window.webkitStorageInfo' is deprecated. Please use 'navigator.webkitTemporaryStorage' or 'navigator.webkitPersistentStorage' instead.

 

Comment pourrais je faire pour que ce script soit opérationnel

 

Merci d'avance

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Merci pour vos réponses rapides.

 

Je possède la version 4.4.1.2000 de maxthon et java est bien a jour.

 

Je ne suis pas vraiment expert en la matière et je ne sais pas comment utiliser TemporyStorage ou PersistentStorege

 

Avez vous un tutoriel qui expliquerait cela?

 

Ou directement la manière de le faire ?

 

merci d'avance

 

_________________________________________________________________________________________________

-----------------------------------------------------------------------------------------------------------------------------------------------------------

 

Edit: J'ai aussi cette erreur ...

 

XMLHttpRequest cannot load http://realm381.c11.castle.wonderhill.com/supported_versions. Origin https://realm381.c11.castle.wonderhill.com is not allowed by Access-Control-Allow-Origin. game:1
stepStarting: Checking API version, Error 0, This browser is not compatible at this time.
API version not available. Using default : overarch
 
La fonction qui je pense pose problème.

				function stepStarting(current_step) {
					var wait_time = Math.randRange(2500, 4500);
					var error_code;
					var error_msg;
					var progress_title;
					progressBar.resume();

					function onSuccess(message, waitTime, currentStep) {
						verboseLog(message);
						debugLog(message);
						STARTUP_TIMER = setTimeout(stepStarting, waitTime, currentStep);
					}

					function onError(errorCode, errorMsg, message, waitTime, currentStep) {
						error_code = errorCode;
						switch (errorCode) {
							/* Bad request (API version ?) */
							case 400:
								error_msg = translate('<b>Bad request!</b>');
								progressBar.stop;
								progressBar.hideshow(false);
								retry = 400;
								dialogFatal('<b>' + kFatalSeedTitle + '</b><br><br>\
											<font color="#BF0000"><b> ' + errorMsg + '</b></font>\
											<br><br><div align=left>\
											' + kFatalSeedMsg + '<br><br></div>\
											<a id="' + UID['support_link'] + '" href="" target="_blank">Bugs and Known Issues</a><br>');
								return;
								break;
								/*
								 * Forbidden (RefControl or --no-referrers
								 * missing ?)
								 */
							case 403:
								error_msg = translate('<b>Forbidden!</b>');
								retry = 403;
								return;
								break;
								/* Rate Limit Exceeded */
							case 429:
								error_msg = '<b>API </b>' + translate('<b>Rate Limit Exceeded</b>, too many requests!');
								waitTime = E429_DELAY;
								progressBar.update({
									step: currentStep,
									title: progress_title,
									stepText: translate('Fetching') + ' ' + message + '<br>' + error_msg + ' - ' + translate('Retry in') + ' ' + waitTime
								});
								progressBar.pause();
								verboseLog(error_msg + ' - ' + translate('Retry in :') + waitTime);
								STARTUP_TIMER = setTimeout(stepStarting, waitTime * 1000, currentStep);
								return;
								break;
							case 509:
								error_msg = translate('<b>Rate Limit Exceeded</b>, too many requests!');
								waitTime = 600;
								progressBar.update({
									step: currentStep,
									title: progress_title,
									stepText: translate('Fetching') + ' ' + message + '<br>' + error_msg + ' - ' + translate('Retry in') + ' ' + waitTime
								});
								progressBar.pause();
								verboseLog(error_msg + ' - ' + translate('Retry in :') + waitTime);
								STARTUP_TIMER = setTimeout(stepStarting, waitTime * 1000, currentStep);
								return;
								break;
							default:
								break;
						}
						error_msg = errorMsg;
						debugLog('stepStarting: ' + message + ', Error ' + errorCode + ', ' + error_msg + '. Retry ' + retry);
						STARTUP_TIMER = setTimeout(stepStarting, waitTime, currentStep, ++retry);
					}

					if (retry <= 20) {
						switch (current_step) {
							case 1:
								/* Check API version */
									function getSupportedVersions(callback) {
										var params = {};
										new MyAjaxRequest('versions', url_versions + '/supported_versions', params, function(res) {
											if (res.ok && res.dat) {
												var list = '';
												if (res.dat.length) {
													api_version = res.dat[res.dat.length - 1];
													for (var v = 0; v < res.dat.length; v++) list = list + ((v == 0) ? '' : ', ') + res.dat[v];
												} else {
													api_version = res.dat;
													list = res.dat;
												}
												verboseLog('List of supported API version : ' + list);
												debugLog('List of supported API version : ' + list);
											}
											if (callback) callback(res);
										}, false);
								}
								progress_title = translate('Getting API version...');
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Checking API version')
								});
								getSupportedVersions(function(res) {
									if (res.ok) {
										onSuccess(translate('API version Successfully initialized') + ' : ' + api_version, wait_time, current_step + 1);
									} else {
										debugLog('stepStarting: ' + translate('Checking API version') + ', Error ' + res.status + ', ' + res.errmsg + '.');
										onSuccess(translate('API version not available. Using default') + ' : ' + api_version, wait_time, current_step + 1);
									}
								});
								break;
							case 2:
								/* Map data Initialization */
									progress_title = translate('Getting map data...');
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Charging Map binairy file')
								});
								Map.initMapData(function(res) {
									if (res.ok) {
										onSuccess(translate('Map Bin Successfully initialized'), wait_time, current_step + 1);
									} else {
										onError(res.status, res.errmsg, translate('Map Bin'), wait_time, current_step);
									}
								});
								break;
							case 3:
								/* Translation Initialization */
									progress_title = translate('Getting basic data...');
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Fetching Translation matrix')
								});
								Translation.init(function(res) {
									if (res.ok) {
										onSuccess(translate('Translation Matrix Successfully initialized'), wait_time, current_step + 1);
									} else {
										onError(res.status, res.errmsg, translate('Translation matrix'), wait_time, current_step);
									}
								});
								break;
							case 4:
								/* Manifest Initialization */
									progress_title = translate('Getting game data...');
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Fetching Manifest')
								});
								Manifest.init(function(res) {
									if (res.ok) {
										onSuccess(translate('Manifest Successfully initialized'), wait_time, current_step + 1);
									} else {
										onError(res.status, res.errmsg, translate('Manifest'), wait_time, current_step);
									}
								});
								break;
							case 5:
								/* Seed Initialization */
									progress_title = translate('Getting game data...');
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Fetching Seed')
								});
								Seed.init(function(res) {
									if (res.ok) {
										onSuccess(translate('Seed Successfully initialized'), wait_time, current_step + 1);
									} else {
										onError(res.status, res.errmsg, translate('Seed'), wait_time, current_step);
									}
								});
								break;
							case 6:
								/* Sanctuary dragons data */
									progress_title = translate('Getting dragons data...');
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Fetching Dragons data')
								});
								Seed.fetchDragons(function(res) {
									if (res.ok) {
										onSuccess(translate('Dragons data successfully fetched'), wait_time, current_step + 1);
									} else {
										onError(res.status, res.errmsg, translate('Dragons'), wait_time, current_step);
									}
								});
								break;
							case 7:
								/* Fetch capital data */
									progress_title = translate('Getting cities data...');
								var cityIdx;
								/* We make sure to first start the capital */
								for (var i = 0; i < Seed.cityInit.length; i++) {
									if (Seed.cityInit[i].type == 'capital') {
										cityIdx = Seed.cityInit[i].id;
									}
								}
								/* Set progress bar steps / city */
								citySteps = Math.floor(14 / (Seed.cityInit.length - 1));
								progressBar.update({
									step: current_step,
									title: progress_title,
									stepText: translate('Fetching Capital data')
								});
								Seed.fetchCity(cityIdx, function(res) {
									if (res.ok) {
										wait_time = Math.randRange(2500, 6000);
										onSuccess(translate('Capital data successfully fetched'), wait_time, current_step + 1);
									} else {
										onError(res.status, res.errmsg, translate('Capital data'), wait_time, current_step);
									}
								});
								break;
							case 8:
								/* Fetch outposts data */
									progress_title = translate('Getting cities data...');
								for (var i = 0; i < Seed.cityInit.length; i++) {
									if (Seed.cityInit[i].loaded) {
										continue;
									}
									progressBar.update({
										step: current_step + (citySteps * i),
										title: progress_title,
										stepText: translate('Fetching Outpost ') + (i + 1)
									});
									if (Seed.cityInit[i].timer) {
										clearTimeout(Seed.cityInit[i].timer);
									}
									var current_index = i;
									var cityIdx = Seed.cityInit[i].id;
									Seed.fetchCity(cityIdx, function(res) {
										if (res.ok) {
											wait_time = Math.randRange(2500, 6000);
											if (current_index == Seed.cityInit.length - 1) {
												wait_time = 2500;
											}
											onSuccess(translate('Outpost') + ' #' + (i + 1) + ' ' + translate('data successfully fetched'), wait_time, current_step);
										} else {
											onError(res.status, res.errmsg, translate('Outpost') + ' #' + (i + 1), wait_time, current_step);
										}
									});
									return;
								}
								startScript();
								return;
								break;
						}
					} else {
						/* Retries Limit */
						clearTimeout(STARTUP_TIMER);
						progressBar.stop;
						progressBar.hideshow(false);
						if (retry < 400) { /*
											 * to avoid displaying twice a
											 * dialogFatal popup
											 */
							dialogFatal('<b>' + kFatalSeedTitle + '</b><br><br>\
								<font color="#BF0000"><b> ' + (error_code || retry) + ' - ' + error_msg + '</b></font>\
								<br><br><div align=left>\
								' + kFatalSeedMsg + '<br><br></div>\
								<a id="' + UID['support_link'] + '" href="" target="_blank">Bugs and Known Issues</a><br>');
						}
						return;
					}
				}
Lien vers le commentaire
Partager sur d’autres sites

Tu es optimiste Ldfa  :shy:  il y a un message d'erreur qui ne me plait pas 

stepStarting: Checking API version, Error 0, This browser is not compatible at this time.

API version not available. Using default : overarch
 
C'est comme si une api n'était pas implémentée dans maxthon.
J'ai fait une petite recherche et il semblerait que l'erreur serait lié à une api de gestion de l'html5
Voir ICI
 
C'est relativement difficile de débugger un script dont on ne sait pas ce qu'il fait, comment l'utiliser etc....
 
Est-ce que tu as testé comme je te le demandais en mode retro ?
 
@+
Lien vers le commentaire
Partager sur d’autres sites

Le problème viendrait de la collecte des information a partir du serveur?

J'ai utiliser fiddler pour analyser les request et sur maxthon il est écrit no-cache.

Le faite qu'i n'y ai pas de cache peut il entrainer le non fonctionnement d'un tel script?

 

En tout cas je vous remercie d'avoir essayer, je vais donc rester sur chrome.

C'est dommage je trouve maxthon très bon

Lien vers le commentaire
Partager sur d’autres sites

Ce script fonctionnait sur maxthon l'année dernière

Peut être en prenant une version antérieure cela fonctionnerait?

 

 

 

____________________________________________________________________________________________________________

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Ps: http://old-forum.maxthon.com/thread-8420-1-1.html

Lien vers le commentaire
Partager sur d’autres sites

Moi j'ai essayé de remonter dans les versions de Maxthon avec la verson iV du script, mais ça bloque depuis la v4.0.5 de Maxthon. Dans la vidéo, c'était la v III du script... :unsure:

 

Tout n'est pas encore implémenté dans Maxthon au niveau HTML5, et on a aucune information sur le sujet ni de Roadmap. :angelic:

Lien vers le commentaire
Partager sur d’autres sites

Je reste persuadé qu'il y a une api qui n'est pas ou n'est plus implémentée dans cette version de maxthon d'ou le "depracated", il y a tout un tas d'api concernant le stockage. En fait pour le gestionnaire d'erreur on utilise une version obsolète. (deprecated) 

 

Pas mal d'infos sur le lien que j'ai donné ici cela concerne chrome justement et le stockage

 

A+

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.