Arachni 코드단에서 JSON Method 사용하기 (undefined method `parse' for Arachni::Element::JSON:Class 해결)
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 코드 뜯어보시는 분이 있다면 조금이나마 도움되었으면 하네요.