2017-07-20 22 views
0

データベース操作を処理するnode.jsベースのエクスプレスサーバーがあります。現在、私は、提供された電子メールに基づいて、私のSQLデータベースのいくつかの情報を取得しようとしています。以下の操作を実行している間、私は奇妙なエラーに遭遇します。TypeError:ヌルの 'Symbol(asyncId)'プロパティを読み取れません

app.get("/character/:account_email", jsonparser, (req, res) => { 
    database.query("SELECT account_email, character_name, creation_date, blood, money, experience_points, age, is_alive, place_name FROM vmpr_character WHERE account_email = ?", [req.params.account_email], (error, response, fields) => { 
     res.set({ "Content-Type": "application/json" }); 
     if (!error) { 
      res.status(201); 
      res.write(JSON.stringify(response[0])); 

      database.query("SELECT attribute_name, level FROM character_attributes JOIN vmpr_character USING (account_email) WHERE character_attributes.account_email = ?", [req.params.account_email], (error2, response2, fields2) => { 
       if (!error2) { 
        res.write(JSON.stringify(response2)); 
       } else { 
        res.status(502); 
       } 
      }); 
     } else { 
      res.status(404); 
      res.write(JSON.stringify(dummy)); 
     } 
     res.end(); 
    }); 
}); 

TypeError: Cannot read property 'Symbol(asyncId)' of null 
    at write_ (_http_outgoing.js:636:24) 
    at ServerResponse.write (_http_outgoing.js:630:10) 
    at Query.database.query [as _callback] (/Users/nightmare/vmpr/components/database_server/NodeJS/server.js:103:10) 
    at Query.Sequence.end (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/protocol/sequences/Sequence.js:86:24) 
    at Query._handleFinalResultPacket (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/protocol/sequences/Query.js:137:8) 
    at Query.EofPacket (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/protocol/sequences/Query.js:121:8) 
    at Protocol._parsePacket (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/protocol/Protocol.js:280:23) 
    at Parser.write (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/protocol/Parser.js:75:12) 
    at Protocol.write (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/protocol/Protocol.js:39:16) 
    at Socket.<anonymous> (/Users/nightmare/vmpr/components/database_server/NodeJS/node_modules/mysql/lib/Connection.js:103:28) 

同じエラーoccours同じDBにいくつかのデータを掲示します。提供されたデータがまだ正常に保存されている間でも、POSTとGETの両方でサーバーがクラッシュします。 mysqlでこれらのクエリを実行すると、正しい結果が得られます。すべてのログは正常です。

編集: *提供されたアップデートでは、エラーはなくなり、新しいエラーが処理する方がはるかに優れています。 *今はすべて問題ありません。ありがとうございました!

答えて

関連する問題