2017-12-11 42 views
0

JSON値解析の一般的な方法を理解しようとしています。JSON値を解析する正しい方法vpp cpprestsdk

  • ませんエラーチェック:エラーチェックで

    myField = jsonValue["myField"].as_string();` 
    
  • if (jsonValue.is_null()) 
        return false; 
    
    if (!jsonValue.is_object()) 
        return false; 
    
    for (auto it = jsonValue.as_object().cbegin(); it != jsonValue.as_object().cend(); ++it) 
    { 
        const std::string& str = it->first; 
        const json::value& v = it->second; 
    
        if (str == "myField") 
        { 
         if (v.is_string()) 
         { 
          myField = v.as_string(); 
          continue; 
         } 
         else 
         { 
          return false; 
         } 
        } 
    } 
    

コードの量の差が顕著です。私はエラーチェックをしなければならないか、最初のアプローチで十分でしょうか?

+0

処理する前にjsonスキーマでjsonを検証することはありますか? – Jarod42

+0

正確にはどういう意味ですか?はじめてJSONを操作する。クイック検索は、私にいくつかのオンラインバリデーターを指摘します。 – CorellianAle

+0

jsonスキーマは、予想されるjsonを記述する方法です(文字列型のフィールド "myField"が必要です...)。したがって、まずスキーマからエラーを処理できます。スキーマからのエラーがない場合、エラーチェックを避けることができます。 – Jarod42

答えて

0

この質問はおそらくhttps://codereview.stackexchange.com/に適していますが、エラーを正常に処理する必要がある場合は、堅牢なエラー処理を行うコードを使用することをお勧めします。

関連する問題