이 문서는 rr20240101판에서 저장되지 않은 문서입니다.자동으로 r20220720판 문서를 읽어왔습니다. 문서 보기문서 편집수정 내역 엔트리(교육 플랫폼)/콘솔 명령어 (r0 버전으로 되돌리기) [include(틀:상위 문서, top1=엔트리(교육 플랫폼))] [include(틀:엔트리(교육 플랫폼)/관련 문서)] [목차] [clearfix] == 개요 == [[엔트리(교육 플랫폼)]]에서 사용할 수 있는 [[콘솔]] 코드이다. 이걸로 많은 기능을 사용할 수 있다. 그러나 콘솔 코드로 엔트리 서버에 피해가 가는 행동을 할 경우 불법이고 [[코렁탕]] 먹을 수 있다. 개발자 도구[* F12키나 Ctrl + Shift + I키]를 열고 Console 탭에서 입력하는 코드이다. [[엔트리(교육 플랫폼)/코드#s-17|비공식 블럭]]이나 자동화 기능 등에 사용이 가능하다. [[https://github.com/entrylabs/entryjs]] 사이트에 엔트리 블럭 [[Javascript]] 코드를 볼 수 있다. 참고로 작품 보기 화면에서는 Entry [[객체]]를 사용하면 오류가 나니 미리 콘솔에다가 다음 코드를 실행하고 해야 한다. [[https://playentry.org/project/60c85e4378a2161be6e58fb5|#]] [[https://playentry.org/project/616b14ea44cc5904eedab907|#]] {{{#!syntax javascript window.Entry = document.querySelector('iframe.css-1sbyuvq.eaizycc0').contentWindow.Entry; window.EntryStatic = document.querySelector('iframe.css-1sbyuvq.eaizycc0').contentWindow.EntryStatic; }}} == 계정 관련 코드 == === 로그인 코드 === 변수 username과 password 값은 엔트리 계정 아이디와 비밀번호를 입력하면 된다. {{{#!syntax javascript var username = ''; var password = ''; var remember = false; await fetch('https://playentry.org/graphql', { method: 'POST', headers: { 'content-type': 'application/json', }, body: JSON.stringify({ query: `mutation( $username: String! $password: String! $rememberme: Boolean $captchaValue: String $captchaKey: String $captchaType: String ) { signinByUsername( username: $username password: $password rememberme: $rememberme captchaValue: $captchaValue captchaKey: $captchaKey captchaType: $captchaType ) { id username nickname role isEmailAuth isSnsAuth isPhoneAuth studentTerm status { userStatus } profileImage { id name label { ko en ja vn } filename imageType dimension { width height } trimmed { filename width height } } banned { username nickname reason bannedCount bannedType projectId startDate userReflect { status endDate } } } } `, variables: { username, password, rememberme: remember }, }), }); }}} === 아이디로 16진수 id 찾기 === 아이디(유저네임)으로 16진수 id를 찾는 코드이다. 해당 코드를 실행하면 그 값을 반환한다. {{{#!syntax javascript var username = ''; var id = (await (await fetch('https://playentry.org/graphql', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ query: ` query ($username: String) { user(username: $username) { id } } `, variables: { username: username } }) })).json()).data.user.id; return id; }}} == 커뮤니티 관련 코드 == == 작품 관련 코드 == === 리스트에 항목 추가 === '리스트' 이름의 리스트에 '0'이라는 항목을 추가한다. {{{#!syntax javascript Entry.variableContainer.getListByName("리스트").appendValue("0"); }}} === 리스트에 n번째 항목 삭제 === '리스트' 이름의 리스트에 1번째 항목을 삭제한다. {{{#!syntax javascript Entry.variableContainer.getListByName("리스트").deleteValue(1); }}} === 리스트에 n번째 항목의 값을 변경 === '리스트' 이름의 리스트에 1번째 항목의 값을 '엔트리'로 변경한다. {{{#!syntax javascript Entry.variableContainer.getListByName("리스트").replaceValue(1, "엔트리"); }}} === 리스트에 항목을 n번째에 넣기 === '리스트' 이름의 리스트에 '엔트리' 항목을 1번째에 넣는다. {{{#!syntax javascript Entry.variableContainer.getListByName("리스트").insertValue(1, "엔트리"); }}} === 리스트에 포함되어 있을때 그 항목 위치(응용) === 위 코드를 응용해서 만든 것이다. 엔트리 반복문으로 찾는것보다 훨씬 빠르다(!) '리스트' 이름의 리스트에 '내용'이 포함되어 있다면 몇 번째 항목에 위치하는지 반환하고 없으면 null을 반환한다. {{{#!syntax javascript var list = Entry.variableContainer.getListByName("리스트"); var data = '내용'; if (!list) { return null; } const arr = list.getArray(); for (var i = 0, len = arr.length; i < len; i++) { if (arr[i].data.toString() == data.toString()) { return i + 1; } } return null; }}} [[분류:엔트리(교육 플랫폼)]]캡챠되돌리기