foreignStorage

2/16/2022, 9:49:50 PM

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

작성자
UniBreakfast
일일 설치 수
0
총 설치 수
14
평점
0 0 0
버전
1.0
생성일
2022-02-16
갱신일
2022-02-16
크기
2.45KB
라이선스
MIT
적용 사이트
모든 사이트

foreignStorage (like localStorage but in a cloud)

(github repo with front and back source code is here)

Buy enabling this script you're getting the global object foreignStorage, which is quite similar to the well known (I hope) standard localStorage object.

Differences are:

  • localStorage stores data per page (domain), foreignStorage stores common data no matter which page you are on
  • localStorage stores data just in one browser for one user account, foreignStorage stores in the cloud (Google Sheet actually) for everybody
  • localStorage is limited by around 5Mb, foreignStorage limits are currently unknown, but I have a big hope that it is much more
  • localStorage is synchronous, foreignStorage is asyncronous (because it stores data far away in the cloud)

You and everybody else can store, overwrite and read every key/value pair from anywhere

Really. Without authorization or anything like that. Total trust. So please don't use it to store sensitive information.

foreignStorage.setItem(key, valueString)

await foreignStorage.setItem('my_unique_key', '["JSON", "stringified", "data", {"with": "some", "data": "in it"}]')

Stores new key/value pair or overwrites value of existing, if one was already stored. Returns true or throws an error.

foreignStorage.getItem(key)

await foreignStorage.getItem('my_unique_key')

Reads key/value pair and returns what was stored. Returns the string value or undefined (if key not found). Or throws an error.

foreignStorage.removeItem(key)

await foreignStorage.removeItem('my_unique_key')

Removes key/value pair if it was there. Returns true or throws an error.

foreignStorage.getLength()

await foreignStorage.getLength()

Returns the total count of key/value pairs in the foreignStorage or throws an error.

foreignStorage.listKeys()

await foreignStorage.listKeys()

Returns the list of all keys in the foreignStorage or throws an error.

foreignStorage.clear()

await foreignStorage.clear()

Removes all key/value pairs. Yours, everyone's. Returns true or throws an error.

CAUTION!!! THIS WILL SIGNIFICANTLY LOWER YOUR CARMA IF SOMEBODY'S DATA IS LOST IN THE PROCESS AND HE OR SHE WASN'T ACTUALLY READY TO LOOSE IT!

If you're going to use foreignStorage, be nice and play carefully!

(github repo with front and back source code is here)