2017-12-04 6 views
1

みなさん、こんにちは、トラブルのNode.jsとMySQLから生成

私は現在、トラブルサーバーの応答からJSONを解析しようとしたのです。私はクライアント/アプリケーション側のプログラマですが、JSONの作成を担当するサーバープログラマがいます。ですから、私はJSONとその生成方法について実際には分かりません。

組み込みのJSONユーティリティを使用して、Unity(ゲームエンジン)でJSONを解析しています。私は周りにグーグルで行ってきたし、JSONのいくつかの異なるバリエーションがあるかもしれないので、私が持っている特定のJSONを解析できるサードパーティのライブラリが必要かどうかはわかりません。

このタイプのJSONについて次のようなことをよく知っていますか?

[ 
    { 
    "id": 221, 
    "builder_count": 1, 
    "units": "[{\"count\": 1, \"level\": 1, \"type_id\": 1, \"unit_id\": \"2359-1\", \"research_time\": 0, \"research_complete\": 1}],[{\"count\": 5, \"level\": 1, \"type_id\": 11, \"unit_id\": \"2359-11\", \"research_time\": 0, \"research_complete\": 1}],[{\"count\": 5, \"level\": 1, \"type_id\": 2, \"unit_id\": \"2359-2\", \"research_time\": 0, \"research_complete\": 1}]" 
    } 
] 

単位キーは、彼らが本当にオブジェクトであってもビットオフ、彼らは文字列として扱われているようです。

私はサーバーコードにアクセスできます。これがKey:Unitsの生成方法です。我々が使用する当社のサーバ技術

' (SELECT CAST(GROUP_CONCAT (' + 
    '  JSON_ARRAY(' + 
    '   JSON_OBJECT(' + 
    '    "unit_id", tu.unique_id, ' + 
    '    "type_id", tu.unit_type_id, ' + 
    '    "level", tu.level, ' + 
    '    "research_time", tu.research_time, ' + 
    '    "research_complete", tu.research_complete, ' + 
    '    "count", tu.tally ' + 
    '    )' + 
    '   )' + 
    '  ) AS CHAR)' + 
    '  FROM api_TurfUnits tu WHERE tu.turf_id = t.id) AS units, ' 

(全体のコードブロックはかなり大きいので、私は一例として、この部分を選択し、私は全体のJSONを生成し、全機能を掲示する必要がある場合は私に知らせてください) Node.jsとAWS Aurora(MySQL)です。私はウェブサイトhttps://jsonformatter.curiousconcept.com/を使用しないと、すべての異なるJSON標準を試みたが、のどれもしている

は基本的に私は適切にJSONの種類を解析することができるかもしれないライブラリ(単位キー)を探しています彼らはそれを解析するように見えることはできません。

+0

'本当にそうではなくても、文字列として扱われています。 ' - いいえ、彼らは本当に –

+0

'このJSON型 - 何ですか?解析しないJSON?これは無効なJSONと呼ばれ、スタックオーバーフローの問題でよくあります。 –

+0

JSONの例の 'buildings'キーは解析するときに文字列として扱われています。しかし、文字列の値は実際にオブジェクトであり、パーサーはそれを認識していないようです。これはおそらくJSONの生成方法に問題がありますか? – Albert

答えて

1

JSON.parseほとんどのニーズにお応えします。

requestライブラリを使用している場合は、jsonにあらかじめ解析するオプションがあります。

関連する問題