로그인하고 있지 않습니다. 편집하면 당신의 IP 주소가 공개적으로 기록됩니다. 계정을 만들고 로그인하면 편집 시 사용자 이름만 보이며, 위키 이용에 여러 가지 편의가 주어집니다.스팸 방지 검사입니다. 이것을 입력하지 마세요!== API 실험실 이용하기 == [[파일:API실험실.png|320px|thumb|float:left|미디어위키 API 실험실 화면]] [[특수:ApiSandbox]](API실험실 혹은 API연습장)를 이용하면 미디어위키에서 사용가능한 API를 폼 형식으로 입력이 가능합니다. 우선 선택 가능한 동작(action)을 선택한 뒤, 왼쪽의 action 메뉴를 눌러서 세부 동작을 설정할 수 있습니다. 미디어위키 API에 익숙하지 않아도 API 조작을 쉽게 할 수 있는 도구입니다. 일반적으로 잘 사용되는 도구는 아니지만 다음과 같은 작업을 하실 수 있습니다. === 미디어위키 쿼리 검색 === {{본문|도움말:미디어위키 쿼리}} 미디어위키의 기능 중 특정한 조건의 문서들이나 사용자 기여 정보 등을 조회할 때 사용합니다. action=query라고 입력하면 동작을 수행할 수 있습니다. 주소창을 통해서 파라미터를 입력하는 일은 일반적으로 번거롭기에 API 실험실을 통해서 쉽게 접근하실 수 있습니다. ==== 미디어위키 쿼리 예제 ==== ; [[리브레 위키]] 문서에 존재하는 외부 링크 모두 찾기 : ;:[https://librewiki.net/api.php?action=query&format=json&prop=extlinks&titles=%EB%A6%AC%EB%B8%8C%EB%A0%88_%EC%9C%84%ED%82%A4&utf8=1&ellimit=20 조회 결과] ;: API 실험실에서는 다음과 같은 순서대로 작업하시면 됩니다. ::# 우선 main 부분에서 action은 query, format은 json으로 지정합니다. ::# 왼쪽에 action=query 탭을 누른 뒤 prop창에 extlinks라고 입력합니다. (외부 링크) 그 다음에 titles에는 '리브레 위키'(따옴표는 지우고 입력)라고 입력합니다. ::# 왼쪽에 format=json 탭을 누른 뒤 utf8항목을 켜줍니다. 이것이 있어야 한글이 깨지지 않고 출력합니다. ::# 마지막으로 오른쪽 위의 요청하기 버튼을 누르면 결과가 나타납니다. ; [[:분류:나무위키]] 분류에 속하는 모든 문서 찾기 ;: [https://librewiki.net/api.php?action=query&format=json&list=categorymembers&utf8=1&cmtitle=%EB%B6%84%EB%A5%98%3A%EB%82%98%EB%AC%B4%EC%9C%84%ED%82%A4&cmnamespace=0&cmlimit=max 조회 결과] ;: API실험실에서는 다음과 같은 순서대로 작업하시면 됩니다. ::# 우선 main부분에서 action은 query, format은 json으로 지정합니다. ::# 왼쪽에 action=query 탭을 누른 뒤 list 창에 categorymembers라고 입력합니다.(분류 안의 내용) ::# 그 다음 list=categorymembers 탭을 누른 뒤 cmtitle 창에는 '분류:나무위키'(따옴표 제외하고 입력), cmnamespace 창에는 0(일반 문서만), cmlimit에는 max(최대 조회치)를 입력합니다. ::# 왼쪽에 format=json 탭을 누른 뒤 utf8 항목을 켜줍니다. 이것이 있어야 한글이 깨지지 않고 출력합니다. ::# 마지막으로 오른쪽 위의 요청하기 버튼을 누르면 결과가 나타납니다. ==== CSRF 토큰 찾기 ==== 미디어위키 API 작업들 상당수는 CSRF 토큰값을 요구합니다. 비록 API실험실을 이용해서 작업할 때에는 API 실험실 폼에서 알아서 찾아주는 링크를 제공하기에 이 작업을 할 필요는 없으나 프로그래밍을 할 때에는 선행작업이 필요하기에 URL을 암기하는 것이 좋습니다. [https://librewiki.net/api.php?action=query&format=json&meta=tokens 조회 결과] # 우선 API실험실에 들어간 뒤 action=query를 지정합니다. # action=query 탭을 누른 뒤 meta 창에 tokens를 입력합니다. 그 다음 요청하기를 누르면 다음과 같은 형식으로 결과가 출력됩니다. <syntaxhighlight lang="json"> { "batchcomplete": "", "query": { "tokens": { "csrftoken": "(16진수 40자리)+\\" } } } </syntaxhighlight> === 문서 생성 및 편집 === API실험실은 문서 편집을 할 때는 불편한 점이 많습니다. 우선 수정 전의 텍스트 내용도 확인할 수도 없고, 사용가능한 텍스트 편잡 옵션은 text(전체 편집), prependtext(앞부분 추가 텍스트), appendtext(뒷부분 추가 텍스트), section(문단번호, 새 문단일 경우는 new), sectiontitle(새 문단 제목) 정도이기에 기존 내용과 무관하게 문서 전체 혹은 문단 전체를 덮어쓰거나 앞/뒷부분에 추가하는 정도만 가능하기 때문입니다. 그러나 비슷한 포맷의 문서를 여러 개 생성할 때에는 API실험실이 상당히 유용하게 쓰일 수 있습니다. 다음과 같이 여러 문서를 추가할 때 유용하게 쓰실 수 있습니다. 문서 편집할 때에는 POST 메소드만 허용됩니다. 주소창에서는 입력할 수 없으며 POSTMAN 같은 웹 데이터 클라이언트를 이용해야 합니다. ; API실험실을 이용해서 문서 생성하기 :# 작성 전에 주의해야 할 점은 API실험실은 메모장처럼 위키 문법에 효과를 부여하지 않습니다. 따라서 위키 문법을 확실히 숙지할 때에만 사용하실 것을 권장드립니다. :# 우선 API실험실에 들어간 뒤 action=edit를 지정합니다. :# action=edit 탭을 누른 뒤 title 탭에 문서의 제목을 지정합니다. :# text 탭에 문서의 내용을 입력하고, summary 탭에는 편집 요약을 입력합니다. :# section에 번호를 입력하면 문단 순서에 따라 하위 문단의 내용을 편집할 수 있습니다. new라고 입력하면 새 문단 기호를 입력할 수 있습니다. 이 때에는 sectiontitle(문단 제목)도 지정해주세요. :# prependtext는 앞에 추가될 내용, appendtext는 뒤에 추가될 내용을 지정할 수 있습니다. :# 사소한 편집을 보증하기 위해서는 minor 옵션을 켜고, bot 편집을 보증하기 위해서는 bot 옵션을 켜면 됩니다. :# 새 문서임을 보증할 때에는 createonly 옵션을 켜는 것을, 새 문서를 생성하지 않기 위해서는 nocreate 옵션을 켜야 합니다. 넘겨주기를 보증하기 위해서는 redirect 옵션을 켜면 됩니다. :# 마지막으로 중요한 것이 바로 token 값을 채우는 겁니다. API 실험실에서는 토큰 자동 채우기 버튼이 있어서 이걸 눌러서 값을 채울 수 있습니다. 이후에 요청하기 버튼을 누르면 됩니다. :# API실험실을 이용하면 페이지 이동이 적고, 데이터 전송 속도도 조금 더 빠르기에 이 방식을 이용하면 비슷한 포맷의 문서를 대량 생산할 때에(특히 넘겨주기 문서) 편집창을 이용하는 방법보다 더 빠르게 작성할 수 있습니다. {{리브레 위키 도움말}} [[분류:도움말]] 요약: 리브레 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-동일조건변경허락 3.0 라이선스로 배포됩니다(자세한 내용에 대해서는 리브레 위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요. 글이 직접 작성되었거나 호환되는 라이선스인지 확인해주세요. 리그베다 위키, 나무위키, 오리위키, 구스위키, 디시위키 및 CCL 미적용 사이트 등에서 글을 가져오실 때는 본인이 문서의 유일한 기여자여야 하고, 만약 본인이 문서의 유일한 기여자라는 증거가 없다면 그 문서는 불시에 삭제될 수 있습니다. 취소 편집 도움말 (새 창에서 열림) | () [] [[]] {{}} {{{}}} · <!-- --> · [[분류:]] · [[파일:]] · [[미디어:]] · #넘겨주기 [[]] · {{ㅊ|}} · <onlyinclude></onlyinclude> · <includeonly></includeonly> · <noinclude></noinclude> · <br /> · <ref></ref> · {{각주}} · {|class="wikitable" · |- · rowspan=""| · colspan=""| · |} {{lang|}} · {{llang||}} · {{인용문|}} · {{인용문2|}} · {{유튜브|}} · {{다음팟|}} · {{니코|}} · {{토막글}} {{삭제|}} · {{특정판삭제|}}(이유를 적지 않을 경우 기각될 가능성이 높습니다. 반드시 이유를 적어주세요.) {{#expr:}} · {{#if:}} · {{#ifeq:}} · {{#iferror:}} · {{#ifexist:}} · {{#switch:}} · {{#time:}} · {{#timel:}} · {{#titleparts:}} __NOTOC__ · __FORCETOC__ · __TOC__ · {{PAGENAME}} · {{SITENAME}} · {{localurl:}} · {{fullurl:}} · {{ns:}} –(대시) ‘’(작은따옴표) “”(큰따옴표) ·(가운뎃점) …(말줄임표) ‽(물음느낌표) 〈〉(홑화살괄호) 《》(겹화살괄호) ± − × ÷ ≈ ≠ ∓ ≤ ≥ ∞ ¬ ¹ ² ³ ⁿ ¼ ½ ¾ § € £ ₩ ¥ ¢ † ‡ • ← → ↔ ‰ °C µ(마이크로) Å °(도) ′(분) ″(초) Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η Θ θ Ι ι Κ κ Λ λ Μ μ(뮤) Ν ν Ξ ξ Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ Φ φ Χ χ Ψ ψ Ω ω · Ά ά Έ έ Ή ή Ί ί Ό ό Ύ ύ Ώ ώ · Ϊ ϊ Ϋ ϋ · ΐ ΰ Æ æ Đ(D with stroke) đ Ð(eth) ð ı Ł ł Ø ø Œ œ ß Þ þ · Á á Ć ć É é Í í Ĺ ĺ Ḿ ḿ Ń ń Ó ó Ŕ ŕ Ś ś Ú ú Ý ý Ź ź · À à È è Ì ì Ǹ ǹ Ò ò Ù ù · İ Ż ż ·  â Ĉ ĉ Ê ê Ĝ ĝ Ĥ ĥ Î î Ĵ ĵ Ô ô Ŝ ŝ Û û · Ä ä Ë ë Ï ï Ö ö Ü ü Ÿ ÿ · ǘ ǜ ǚ ǖ · caron/háček: Ǎ ǎ Č č Ď ď Ě ě Ǐ ǐ Ľ ľ Ň ň Ǒ ǒ Ř ř Š š Ť ť Ǔ ǔ Ž ž · breve: Ă ă Ğ ğ Ŏ ŏ Ŭ ŭ · Ā ā Ē ē Ī ī Ō ō Ū ū · à ã Ñ ñ Õ õ · Å å Ů ů · Ą ą Ę ę · Ç ç Ş ş Ţ ţ · Ő ő Ű ű · Ș ș Ț ț