2017-09-21 15 views

答えて

3

投稿した文字列が有効なJSONではありません。エスケープはまだsomethingの値に存在していることを

[{"something":"information \"YES\"","next":"normal"}] 

注:これは、非文字列化されたJSONだろう。あなたは文字列として、このJSONを持っていた場合

は、二重引用符のエスケープは、あなたが作業している言語に依存Rubyでは、これはそれがどのように見えるかです:あなたがいることを使用する場合は

"[{\"something\":\"information \\\"YES\\\"\",\"next\":\"normal\"}]" 

JSON.parse("[{\"something\":\"information \\\"YES\\\"\",\"next\":\"normal\"}]") 
#=> [{"something"=>"information \"YES\"", "next"=>"normal"}] 
+0

問題は、私が使用している外部APIから返信として投稿したものと似た文字列が表示されていることです。回答の大半は有効なJSON文字列ですが、上記の問題のために解析できない奇妙な1つまたは2つがあります。私の唯一の選択肢は、問題の二重引用符を対象とする正規表現を見つけ出すこと、または個々のエッジケースを処理することです。 –

+0

そのAPIがあなたにガベージデータを送信しているので、あなたが抱えている問題を修正できるようにしなければなりません。これはバグですが、それについて疑問はありません。誰かが正しくエンコードしなければならず、それを修正することは*醜い*でしょうので、責任があなたに当てはまらないことを希望します。 – tadman

+0

@KelvinChan JSONレスポンスは二重引用符で囲まれていますか、これは大きなJSONオブジェクトの値の断片ですか? – coreyward

関連する問題