Is there any way to convert JSONP format to JSON?

后端 未结 1 1206
隐瞒了意图╮
隐瞒了意图╮ 2020-12-16 14:33

I am trying to parse a response from server and i am new to this topic, Unfortunately it is in JSONP format. I don\'t know how to parse JSONP format, when i tried with JSON

相关标签:
1条回答
  • 2020-12-16 15:16

    JSONP is just JSON wrapped in a JavaScript function call. For instance, something like:

    callback({"status":"success", "someVar":1});
    

    So you have a couple of options. If you are using a WebView you can define a function called callback in JavaScript and then just call eval() on the JSONP data. This will invoke the callback function, passing it the parsed JSON object (the eval() does the parsing for you).

    Or, if you have the JSONP string in your Java code, the simplest option is probably to extract out the JSON substring, like:

    String json = jsonp.substring(jsonp.indexOf("(") + 1, jsonp.lastIndexOf(")"));
    

    That will strip off callback( and );, leaving you with just {"status":"success", "someVar":1}, which should then parse with any standard JSON parser.

    0 讨论(0)
提交回复
热议问题