팁과 노하우

전체보기

모바일 상단 메뉴

본문 페이지

[전문기술] 메이플 API에 대한 고찰

아이콘 쌀가지
댓글: 48 개
조회: 43010
추천: 24
2019-08-06 06:22:54
설명하기 앞서, 아래 내용들은 그냥 제 생각과 그에따른 사용방법을 서술한거입니다.


http://api.maplestory.nexon.com/soap/maplestory.asmx

--해당링크에 대한 사용방법 답변
용사님을 만나!! GLORY한~ 미하일입니다!

안녕하세요.

문의주신 URL은 인게임에 제공되는 기능 중 웹으로 구현된
서비스를 제공하고 있는 API입니다. (말씀하신 길드게시판 기능 포함)

길드 기능 등이 포함되어 있어 별도로 숨김이나 차단을 하지는 않았고
모든 용사님들이 접근할 수 있도록 URL은 오픈되어 있긴 있는데요.

안타깝게도 자세한 역할이나 사용방법은 별도로
인게임 내 데이터와 연관되어 있기에 안내가 어려운 점 양해해주시기 바랍니다.

감사합니다... 이만 물러가볼게욥(__)
--해당링크에 대한 사용방법 답변--

역시 메이플스토리 뭘 물어보기만하면
"인게임 또는 홈페이지에서 확인할 수 없는 내용은 따로 안내해 드리기 어렵답니다..(8  8)"
"하지만... 특정 주문서 아이템의 드랍 정보에 대해서는 상세하게 안내 드리기 어려웠습니다.. (_ _)"
이런 대답만 돌아올뿐....

그래서 해당 링크들에대해 하나하나 같이 생각해보는 시간을 가지도록 해보아요.

=-=-=

자 그러면 본론으로 들어가볼게요.

01. GetCharacterInfoByAccountID
설명: 계정ID[32bit 숫자]를 가지구 "대표 캐릭터" 정보를 구해옴
입력해야하는 값: 계정ID
리턴되는 값: 캐릭터 이미지 URL, 월드, 닉네임, 레벨, 경험치, 직업, 자세한직업, 인기도, 랭킹, 월드랭킹
반환값 예제:
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<UserInfo diffgr:id="UserInfo1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<AvatarImgURL>
http://avatar.maplestory.nexon.com/Character/JEJLEKAHJJIIPJJKPPFBJPHDJJINMOJCBLFIOFNMNMGCCEFAJEOFIJDHLCKJBOLIPHJKLMFJICPFEBPMGECJOKHIAFIEDLNKFJJBBNGKBFPPEENIFLDMMBMABIJHLDELKHEDAMJDKECICLGOLLLIDJFHJPKBIDAPAMLKFHJPNAEKLOJFBEEOKNGCJHJBHCEOBNAOIOBIPLKJMMBIFEFPCEMLBJNLNENEGCGKNFDLODBLIAMOKLHPEFKGLMCOPMEC.png
</AvatarImgURL>
<WorldName>스카니아</WorldName>
<CharacterName>쌀가지</CharacterName>
<Lev>256</Lev>
<Exp>631485504188</Exp>
<Job>레지스탕스</Job>
<JobDetail/>
<Pop>1733</Pop>
<TotRank>2423</TotRank>
<WorldRank>404</WorldRank>
</UserInfo>
</NewDataSet>
</diffgr:diffgram>


같이 고민해야하는부분:
  계정ID값을 쉽게 구하는방법에대해

우선 저는 이렇게 얻었습니다.
메이플스토리 홈페이지에 로그인후 내정보를 누르시면 

에 들어가셔서 해당 HTML소스를 보시면

요런식으로 체크박스(?), 콤보박스(?)에 value값이 계정ID값입니다.


02. GetInspectionInfo
설명: 확실하지 않지만 튕패정보를 알려주는거 같습니다.
입력해야하는 값: 없음
리턴되는 값: 서비스 코드시작 시간끝나는 시간내용
반환값 예제:
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<InspectionInfo diffgr:id="InspectionInfo1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<serviceCode>2</serviceCode>
<startDateTime>2019-07-23T07:00:00+09:00</startDateTime>
<endDateTime>2019-07-23T08:00:00+09:00</endDateTime>
<strObstacleContents>7/23(화) 전체 월 드 서버점검</strObstacleContents>
</InspectionInfo>
</NewDataSet>
</diffgr:diffgram>

같이 고민해야하는부분:
  서비스 코드란 무엇인가?


03. GetInspectionInfomation
설명: 2번과 동일해보이나 n4GameCode의 정보를 모르겠습니다.
입력해야하는 값:
리턴되는 값:
반환값 예제:

같이 고민해야하는부분:
  ??


04번부터 15번까지는 길드 게시판 관련 내용입니다.

04. GuildNewBoard_Article_Delete2
설명: 길드게시판 게시글 삭제
입력해야하는 값: codeBoard게시글ID암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제: (?) 실패시에만 값이 담기는거같아 다음부턴 생략하겠습니다.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GuildNewBoard_Comment_Delete2Response xmlns="http://gnxsoap.nexon.com/soap/">
<GuildNewBoard_Comment_Delete2Result/>
</GuildNewBoard_Comment_Delete2Response>
</soap:Body>
</soap:Envelope>

같이 고민해야하는부분:
  입력해야하는 값 3개를 어떻게 구해올것인가가 가장 큰 관점입니다.

확실히 미하일님이 답변주신것처럼 인게임내에 실제로 사용되는 코드입니다.
codeBoard값은 2로 고정되는거 같구, 게시글ID는 GuildNewBoard_Article_List2로, 암호화된 캐릭값은 어떻게 구해야할지 감이 안옵니다.


05. GuildNewBoard_Article_List2
설명: 길드게시판 게시글 리스트 얻어오기
입력해야하는 값: codeBoard게시판 카테고리ID페이지암호화된 캐릭값
리턴되는 값: 너무 많아 생략. 중간중간 첫마디가 "n숫자" 인것은 리턴값이 n바이트 정수인거같음.
반환값 예제:
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<mgp_newArticle_GetList diffgr:id="mgp_newArticle_GetList1" msdata:rowOrder="0">
<oidBoard>????</oidBoard>
<oidArticle>2</oidArticle>
<strTitle>TEST03</strTitle>
<strContent>TEST03</strContent>
<strImgUrl/>
<n1GameWorldID>0</n1GameWorldID>
<n4CharacterID>????</n4CharacterID>
<strCharacterName>????</strCharacterName>
<n4CommentCount>0</n4CommentCount>
<n4ReadCount>0</n4ReadCount>
<n4RecommendCount>0</n4RecommendCount>
<dateCreate>2019-08-06T05:06:01.727+09:00</dateCreate>
<CharacterLook>
1BC0280877631323CFF17F9425E9F83..중략..0000010
</CharacterLook>
<PetLook>FFFF</PetLook>
</mgp_newArticle_GetList>
<mgp_newArticle_GetList_param diffgr:id="mgp_newArticle_GetList_param1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<RETURN_VALUE>0</RETURN_VALUE>
<frk_n4ErrorCode>0</frk_n4ErrorCode>
<frk_strErrorText/>
<frk_isRequiresNewTransaction>1</frk_isRequiresNewTransaction>
<oidBoard>????</oidBoard>
<oidArticleCategory>0</oidArticleCategory>
<isWantViewDeleted>0</isWantViewDeleted>
<n1PageSize>10</n1PageSize>
<n4PageNo>1</n4PageNo>
<oidArticleBlockStart>2</oidArticleBlockStart>
<n4TotalRowCount>1</n4TotalRowCount>
</mgp_newArticle_GetList_param>
</NewDataSet>
</diffgr:diffgram>

같이 고민해야하는부분:
  카테고리ID는 담벼락이0, 공지사항이 1 인거같구
뇌피셜이긴한데 "렬무"님이 길드게시판 더벅머리 캐릭터 개선안은 충분히 몬스터 라이프처럼 할수있을거같은데 방치해둔거같아요. 게시글 작성 API 자체가 GuildNewBoard_Article_NoImage_Create2 이니.... 할말 다했습니다.


06. GuildNewBoard_Article_Modify2
설명: 길드게시판 게시글 수정
입력해야하는 값: codeBoard게시글ID게시글내용암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제:
(?)

같이 고민해야하는부분:
  없음


07. GuildNewBoard_Article_MyList2
설명: 길드게시판에 내가 작성한 게시글 리스트
입력해야하는 값: codeBoard게시글ID게시글내용암호화된 캐릭값
리턴되는 값: 너무 많아 생략
반환값 예제:
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<mgp_newArticle_MyList diffgr:id="mgp_newArticle_MyList1" msdata:rowOrder="0">
<oidBoard>????</oidBoard>
<oidArticle>2</oidArticle>
<strTitle>TEST03</strTitle>
<strContent>TEST03</strContent>
<strImgUrl/>
<n1GameWorldID>0</n1GameWorldID>
<n4CharacterID>????</n4CharacterID>
<strCharacterName>????</strCharacterName>
<n4CommentCount>0</n4CommentCount>
<n4ReadCount>0</n4ReadCount>
<n4RecommendCount>0</n4RecommendCount>
<dateCreate>2019-08-06T05:06:01.727+09:00</dateCreate>
<CharacterLook>
1BC0280877631323CFF17F9425E9F83..중략..0000010
</CharacterLook>
<PetLook>FFFF</PetLook>
</mgp_newArticle_MyList>
<mgp_newArticle_MyList_param diffgr:id="mgp_newArticle_MyList_param1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<RETURN_VALUE>0</RETURN_VALUE>
<frk_n4ErrorCode>0</frk_n4ErrorCode>
<frk_strErrorText/>
<frk_isRequiresNewTransaction>1</frk_isRequiresNewTransaction>
<oidBoard>????</oidBoard>
<isWantViewDeleted>0</isWantViewDeleted>
<n1GameWorldID>0</n1GameWorldID>
<n4CharacterID>????</n4CharacterID>
<n4PageNo>1</n4PageNo>
<oidArticleBlockStart>2</oidArticleBlockStart>
<n4TotalRowCount>1</n4TotalRowCount>
</mgp_newArticle_MyList_param>
</NewDataSet>
</diffgr:diffgram>

같이 고민해야하는부분:
  없음


08. GuildNewBoard_Article_NoImage_Create2
설명: 길드게시판 게시글 작성
입력해야하는 값: codeBoard게시글 제목, 게시글 내용, 카테고리ID, 암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제:
(?)

같이 고민해야하는부분:
  없음


09. GuildNewBoard_Article_Recommend2
설명: 길드게시판 게시글 추천하기 및 추천취소
입력해야하는 값: codeBoard, 계정ID, 게시글ID, 암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제:
(?)

같이 고민해야하는부분:
  없음


10. GuildNewBoard_Article_RecommendList2
설명: 길드게시판 게시글 추천리스트
입력해야하는 값: codeBoard, 게시글ID, 암호화된 캐릭값
리턴되는 값: strCharacterName_recommender <- 추천한 닉네임 및 많아서 생략
반환값 예제:
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<mgp_newArticle_RecommendList diffgr:id="mgp_newArticle_RecommendList1" msdata:rowOrder="0">
<strCharacterName_recommender>????</strCharacterName_recommender>
</mgp_newArticle_RecommendList>
<mgp_newArticle_RecommendList_param diffgr:id="mgp_newArticle_RecommendList_param1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<RETURN_VALUE>0</RETURN_VALUE>
<frk_n4ErrorCode>0</frk_n4ErrorCode>
<frk_strErrorText/>
<frk_isRequiresNewTransaction>1</frk_isRequiresNewTransaction>
<oidBoard>????</oidBoard>
<oidArticle>2</oidArticle>
</mgp_newArticle_RecommendList_param>
</NewDataSet>
</diffgr:diffgram>


같이 고민해야하는부분:
  없음


11. GuildNewBoard_Comment_Create2
설명: 길드게시판 게시글 댓글 작성
입력해야하는 값: codeBoard게시글ID, 댓글 내용, 암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제:
(?)

같이 고민해야하는부분:
  없음


12. GuildNewBoard_Comment_Delete2
설명: 길드게시판 게시글 댓글 삭제
입력해야하는 값: codeBoard게시글ID댓글ID, 암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제:
(?)

같이 고민해야하는부분:
  없음


13. GuildNewBoard_Comment_List2
설명: 길드게시판 게시글 댓글 리스트
입력해야하는 값: codeBoard, 게시글ID, 페이지, 암호화된 캐릭값
리턴되는 값: 정확히 알 수 없음
반환값 예제:
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<mgp_newComment_GetList diffgr:id="mgp_newComment_GetList1" msdata:rowOrder="0">
<oidBoard>????</oidBoard>
<oidArticle>2</oidArticle>
<oidComment>1</oidComment>
<dateCreate>2019-08-06T06:07:14.997+09:00</dateCreate>
<strComment>test123</strComment>
<n1GameWorldID>0</n1GameWorldID>
<n4CharacterID>????</n4CharacterID>
<strCharacterName>????</strCharacterName>
</mgp_newComment_GetList>
<mgp_newComment_GetList_param diffgr:id="mgp_newComment_GetList_param1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<RETURN_VALUE>0</RETURN_VALUE>
<frk_n4ErrorCode>0</frk_n4ErrorCode>
<frk_strErrorText/>
<frk_isRequiresNewTransaction>1</frk_isRequiresNewTransaction>
<oidBoard>????</oidBoard>
<oidArticle>2</oidArticle>
<n1PageSize>10</n1PageSize>
<n4PageNo>1</n4PageNo>
<oidCommentBlockStart>1</oidCommentBlockStart>
<n4TotalRowCount>1</n4TotalRowCount>
</mgp_newComment_GetList_param>
</NewDataSet>
</diffgr:diffgram>

같이 고민해야하는부분:
  없음


14. MapleNoticeBoard_GetList_Num
설명: 알 수 없음....
입력해야하는 값:
리턴되는 값:
반환값 예제:

같이 고민해야하는부분:
  ??


15. MapleTNoticeBoard_GetList_Num
설명: 알 수 없음....
입력해야하는 값:
리턴되는 값: <MapleTNoticeBoard_GetList_NumResult>0</MapleTNoticeBoard_GetList_NumResult>
반환값 예제:

같이 고민해야하는부분:
  ??

16. MasterCharacterRemove
설명: 대표 캐릭 삭제인거 같으나 사용법을 모르겠음...
입력해야하는 값:
리턴되는 값:
반환값 예제:

같이 고민해야하는부분:
  ??


17. SyncMasterCharacterInfo
설명: 대표 캐릭 변경인거 같으나 사용법을 역시 모르겠음..
입력해야하는 값:
리턴되는 값:
반환값 예제:

같이 고민해야하는부분:
  ??


=-=-=

끝으로... 암호화된 캐릭값을 어떻게 알아올거냐 이것이 앱이나 홈페이지 개발에 있어 가장 중요한 부분이나 이부분을 모르겠습니다... ㅠㅠ 혹시 아시는분 있으시면 댓글 가능할까요?

해당 API로 개발시 장단점.
장점: 이런 API들을 이용해서 홈페이지나 앱을 만든다면 인게임 길드 게시판과 연동할수있어 좋을거같습니다.
단점: 길드게시판이라하면 카테고리 담벼락, 공지사항 2개밖에 없는데다가 길드카톡, 디코 등에 밀려나서 개발이 꺼려짐.

감사합니다.


=-=-=



이런식으로 홈페이지 만들어서 길드원들끼리 정삼공유도 가능하겠네요. 라고 생각을 했으나 친챗이나 연합챗에 물어보는게 더 빠르다는것을....

모바일 게시판 하단버튼

댓글

새로고침
새로고침

모바일 게시판 하단버튼

지금 뜨는 인벤

더보기+

모바일 게시판 리스트

모바일 게시판 하단버튼

글쓰기

모바일 게시판 페이징

최근 HOT한 콘텐츠

  • 메이플
  • 게임
  • IT
  • 유머
  • 연예
AD