Хранение Greasemonkey - PullRequest
       12

Хранение Greasemonkey

6 голосов
/ 02 ноября 2009

Существует ли ограничение на объем данных, которые можно сохранить с помощью GM_setValue ?

Ответы [ 3 ]

4 голосов
/ 29 декабря 2009

Больше информации в Greasespot Wiki :

Хранилище настроек Firefox не предназначено для хранения больших объемов данных. Не существует жестких ограничений, но очень большие объемы данных могут заставить Firefox использовать больше памяти и / или работать медленнее.

Ссылка относится к обсуждению в Greasemonkey Mailinglist . Энтони Лиуаллен отвечает на тот же вопрос, что и вы:

Я только что проверил это. Кажется, работает до 32 Мб строки без серьезных проблем, но 64 или 128 начинает разбивать диск для виртуальная память справедливая сделка.

4 голосов
/ 02 ноября 2009

GM хранит его в свойствах. Откройте about: config и найдите их.

Согласно http://diveintogreasemonkey.org/api/gm_getvalue.html, вы можете найти их в ветке greasemonkey.scriptvals.

Эта информация sqlite о ее пределах показывает некоторые ограничения по умолчанию для строк и больших двоичных объектов, но они могут быть изменены Firefox.

0 голосов
/ 02 ноября 2009

Согласно предоставленному вами сайту, «аргумент значение может быть строкой, логическим значением или целым числом».

Очевидно, строка может содержать гораздо больше информации, чем целое число илиboolean.

Поскольку сценарии GreaseMonkey являются JavaScript, максимальная длина для GM_setValue - это максимальная длина строки JavaScript.На самом деле, движок JavaScript (в зависимости от браузера) определяет максимальную длину строки.

Я не знаю каких-либо особенностей, но вы можете написать скрипт для определения максимальной длины.

Продолжайте удваивать длину, пока не получите ошибку.Затем попробуйте значение на полпути между maxGoodLen и minBadLen, пока maxGoodLen = maxBadLen - 1.

...