arachni 코드 수정 중 json 사용이 불가능한 경우가 있었습니다.

[ Code ]
require ‘json'
JSON.parse(data)

[ Error ]
undefined method `parse' for Arachni::Element::JSON:Class

JSON은 json library에 모듈로 정의된 걸로 알고있는데... (참고로 모듈은 중복 사용 불가합니다)

2.4.2 :207 > JSON.class
=> Module

그래서, 해결하려고 좀 삽질하다 보니 몇가지 사실을 알게되었습니다.

- arachni에선 기존 JSON 객체를 ::JSON 으로 넘기구 자세적인 JSON을 사용함
- 그래서 원본 ::JSON 모듈 사용으로 원래 json 모듈을 불러올 수 있음

코드 내부에서 ::JSON 모듈로 사용하니 기존 JSON library의 메소드를 사용할 수 있었습니다.

::JSON.parse(data)

혹시나... (없을 것 같지만) 저 처럼 arachni 코드 뜯어보시는 분이 있다면 조금이나마 도움되었으면 하네요.

댓글 없음:

댓글 쓰기