2016-08-07 16 views
2

私はMongoDBデータベースを作成し、WebサービスのAPIエンドポイント経由で公開しているD3.JSビジュアライゼーションをまとめています。私はこのためにPython Flaskを使用しています。D3.JSを使用して同じWebサイトでAPIエンドポイントにアクセス

発行されたデータが有効なJSON形式であることを検証しました。MIMEタイプをapplication/jsonに設定しています。私はd3.jsonを使用してそのURLに呼び出すしようとすると、しかし、質問のすべてにURLを訪問中にいる間は、罰金です:

d3.json("http://127.0.0.1:5000/citibike-api/bike-inbounds/id/72", function (data, error) { 
    if(error) throw error; 
    console.log(data); 
}); 

コンソールが私に叫ぶ:

uncaught exception: [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object] 

は私が必要とする他のものはありますこのリクエストを機能させるには?

これを行うには、JSONPで何かが必要ですか?

+0

文字列化例外あなたは何が起こっているかを理解することができるように。 –

答えて

2

スワップdataerrorです。代わりに:

d3.json("http://127.0.0.1:5000/citibike-api/bike-inbounds/id/72", function (data, error) { 
    if(error) throw error; 
    console.log(data); 
}); 

それは次のようになります。コールバックがあるd3.json ...

でAPIによる

d3.json("http://127.0.0.1:5000/citibike-api/bike-inbounds/id/72", function (error, data) { 
    if(error) throw error; 
    console.log(data); 
}); 

説明

を、... 2つの引数、つまりエラーがあればそれが呼び出され、解析されたJSON

引数errorはオプションです。あなただけ書くことができます:あなたは、引数errorを使用する場合、

function (data){ 

しかし、シーケンスがなければならない:

function (error, data){ 
+1

このような単純なエラー! この議論の背後にある論理は何ですか?私は前にエラーを見たことがない。 –

+1

私自身のコメントに答えるには:実装されている関数がいくつの追加引数を受けても、 'error'は常に関数の予測可能な位置指定可能な引数になるようにこれが行われると思います。キーワード宣言がこの問題を完全に回避できるようにする言語。 –

関連する問題