imitated-seed-2 icon indicating copy to clipboard operation
imitated-seed-2 copied to clipboard

router.js에서 지속적으로 오류가 발생합니다.

Open jeongjo13 opened this issue 1 year ago • 19 comments

제 서버도 그렇고 다른 분 서버도 그렇습니다.

jeongjo13 avatar Aug 15 '24 07:08 jeongjo13

오류 코드 보여주세요.

theseeduser avatar Aug 15 '24 09:08 theseeduser

정확한 오류 코드는 현재 재현이 어려우나 router.js 27번 줄에서 문제가 있던 걸로 기억합니다.

오류 메시지 내용이 대충 undefined를 replace 못한다는 내용이었습니다.

jeongjo13 avatar Aug 15 '24 10:08 jeongjo13

원본 병아리를 깔아서 다시 재현해보겠습니다.

jeongjo13 avatar Aug 15 '24 10:08 jeongjo13

undefined:25 var textarea = ; ^

TypeError: Cannot read property 'replace' of undefined at editDocument (eval at (C:\Users(사용자명)\Documents\grantwiki2\routes\router.js:27:5), :25:143)

jeongjo13 avatar Aug 15 '24 10:08 jeongjo13

재현 상황을 알려주세요

navyCarpet avatar Aug 17 '24 05:08 navyCarpet

windows 11입니다.

nodejs command prompet인가 사용했습니다.

jeongjo13 avatar Aug 17 '24 06:08 jeongjo13

저기서 값이 undefined여서 그렇습니다

ghost avatar Aug 17 '24 06:08 ghost

undefined 값에는 당연히 replace 메소드가 없으니 오류가 뜨는 것이고요

ghost avatar Aug 17 '24 06:08 ghost

그럼 어떻게 코드를 고쳐야 undefined가 안 뜨나요?

jeongjo13 avatar Aug 17 '24 06:08 jeongjo13

근데 glitch는 안 그럽니다

jeongjo13 avatar Aug 17 '24 06:08 jeongjo13

혹시 타 라우트 수정하신 적 있으신지요? router.js:27:5 라인 오류는 대부분 라우트 수정중 발생하는 오류여서요.

ghost avatar Aug 17 '24 07:08 ghost

코드도 보니까 router.js 코드가 아닌 것으로 보이네요

ghost avatar Aug 17 '24 07:08 ghost

어떤 시점에 해당 오류가 뜨나요? (ex. /edit/ 접속시, 권한 부여시 등)

ghost avatar Aug 17 '24 07:08 ghost

혹시 타 라우트 수정하신 적 있으신지요? router.js:27:5 라인 오류는 대부분 라우트 수정중 발생하는 오류여서요.

그게 뭔가요?

jeongjo13 avatar Aug 17 '24 07:08 jeongjo13

/edit/ 접속 시 edit page는 로딩이 잘 되는데 로딩 완료 직후 오류납니다

jeongjo13 avatar Aug 17 '24 07:08 jeongjo13

/edit/ 접속 시 edit page는 로딩이 잘 되는데 로딩 완료 직후 오류납니다

그러면 아마 edit.js 관련 오류일 것 같네요.

ghost avatar Aug 18 '24 01:08 ghost

var error = null; var content = ''; var section = Number(req.query['section']) || null; var baserev = 0; var data = await curs.execute("select rev from history where title = ? and namespace = ? order by CAST(rev AS INTEGER) desc limit 1", [doc.title, doc.namespace]); if(data.length) baserev = data[0].rev; var token = rndval('abcdef1234567890', 64); var textarea = <textarea id="textInput" name="text" wrap="soft" class=form-control>${(req.method == 'POST' ? req.body['text'] : rawContent).replace(/<\/(textarea)>/gi, '&lt;/$1&gt;')}</textarea>;

// 틀:나무위키 -> helptext

문제 원인의 코드입니다. 이 부분의 수정이 필요해보이네요.

ghost avatar Aug 18 '24 01:08 ghost

@jeongjo13 혹시 해당 오류가 '새 문서를 생성할 때' 생기나요? 만약 그렇다면 제 가설이 성립합니다.

ghost avatar Aug 18 '24 01:08 ghost

기존 문서 편집 시에도 오류가 발생합니다.

jeongjo13 avatar Aug 18 '24 02:08 jeongjo13