Skip to content

Instantly share code, notes, and snippets.

View koo6357's full-sized avatar

koo koo6357

  • kakaopay insurance
  • Seoul
View GitHub Profile
@koo6357
koo6357 / expLocalStorage.js
Created September 6, 2019 04:08
expire localStorage
class ExpLocalStorage {
constructor() {
this.now = Math.floor(Date.now() / 1000);
this.initialize();
}
initialize() {
if(!window || !window.localStorage) {
throw new Error("@@ localStorage is not available")
@koo6357
koo6357 / aws-sdk-s3-imageUpload.md
Created September 9, 2019 07:44
s3 imageUpload

aws-sdk s3 upload

  • image를 base64로 encoding된 파일을 받은경우, tag를 원할경우는 tag도 추가가능
  const s3ImageUploader = async (base64FileStr, _filename, tag) => {
    const split_str = base64FileStr.split(';base64,');
    const binaryImageData = split_str[1];
    const content_type = split_str[0].split(':')[1];
    let ext = content_type.split('/')[1];
    if(content_type === 'image/svg+xml') {
      ext = 'svg'
@koo6357
koo6357 / pm2_config.md
Last active September 9, 2019 08:55
pm2와 config 모듈을 이용한 app 실행환경 관리

pm2와 config 모듈을 이용한 서버관리

pm2의 ecosystem 기능을 이용해 보자. 모듈의 재호출 필요없이 편하게 config를 사용하기 위하여 global module안에 추가하자.

// app.js
global.config = require('config');

// ex) mongodb 세팅
const db = global.config.mongoDbUrl;   // "mongodb://koolog:<password>@ds3.mlab.c/koolog"
@koo6357
koo6357 / moment.md
Created September 11, 2019 02:49
moment.js

moment.js

내가 자주쓰는 moment 형태

moment()
  .utc()
  .format('YYYY-MM-DD HH:mm:ss');
  // "2019-09-10 03:20:56"
@koo6357
koo6357 / react_env.md
Last active January 5, 2021 04:26
REACT ENV 환경설정

REACT ENV 환경설정

react에서 지원하는 환경변수를 사용하여 app을 실행 또는 빌드하는 시점에 분기를 태우고, 그에따라 적용할수 있는 config파일을 하나 생성하겠다. react 환경변수는 REACT_APP_ 으로 시작해야 react내부에서 process.env로 참조할수 있다는 점을 주의하자.

// ex) package.json
{
  "scripts": {
      "start": "react-scripts start",
@koo6357
koo6357 / run-command-remotely.md
Created September 24, 2019 09:54
run command remotely with async

run command remotely with async

function promiseExec(cmd) {
    return new Promise((resolve, reject) => {
      exec(cmd, (error, stdout, stderr) => {
        if (error) {
          reject(error);
        }
 resolve(stdout ? stdout : stderr);
@koo6357
koo6357 / gitSetCredential.md
Last active October 13, 2019 07:11
gitSetCredential

Git Set Credential

git 을 사용할때 매번 username과 password를 물어보는게 불편하다면 credential을 저장해주자. git repository 폴더로 이동하여 아래와같이 차례대로 입력하여 준다.

    $ git config credential.helper store
    $ git push http://example.com/repo.git
    Username: <type your username>
    Password: <type your password>
@koo6357
koo6357 / jwt.md
Last active September 1, 2022 08:48
JWT - RSA256

JWT

RSA256 알고리즘 - 비대칭키 암호

엄청 큰 숫자는 소인수분해하기가 힘들다는 것을 이용한다.

아래 설명은 개인적으로 이해한 뇌피셜의 표현이다.

6 = 2 x 3;

@koo6357
koo6357 / chmod.md
Created October 16, 2019 06:05
파일 권한 확인 및 변경 chmod

파일 권한 확인 및 변경

  • ex) ssh pem key 파일의 권한 이슈가 발생하였고 해결을 위해 체크하고 변경하고 싶을경우
ls -la ~/.ssh/mykey.pem   // -rw-r--r-- 와같이 권한 상태를 보여준다.
chmod 600 ~/.ssh/mykey.pem   // chmod 뒤에 권한 mode와 파일명을 입력한다.
@koo6357
koo6357 / mysql-error.md
Last active October 23, 2019 03:04
mysql code: 'ER_NOT_SUPPORTED_AUTH_MODE'

mysql error

log1

ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/Cellar/mysql/5.7.22/lib/plugin/caching_sha2_password.so, 2): image not found

log2

0|koolog | code: 'ER_NOT_SUPPORTED_AUTH_MODE',