2012-03-28 14 views
0

私はwp7用のsliverlightラッパーを開発中です。このアプリはhttps://github.com/slodge/faceにあります。ご覧のとおり、このアプリはうまくいきますが、私は1つのことを変更したいと思います:JSONレスポンスを気分属性と一緒に返します(存在しません)。ドキュメントhttp://developers.face.com/docs/api/faces-detect/によると、request urlにattributes = allを指定することで解決できます。コードを変更した後、enter image description hereface.com APIから適切なJSONレスポンスが得られません

何も起こりませんでした。私は間違った方法でそれを作ったと思う。私がしなければならないこと?どこでURLを変更する必要がありますか?

+0

あなたはPOSTをやっている - どのようにあなたがあなたのリクエストボディを設定していますか? –

+0

私はこれがメソッド(dict)で渡されるパラメータに従ってリクエストボディを形成すると仮定します。私はウェブサービスに強くなく、正確にこのリクエストが設定され送信される場所を見つけることができません。あなたのマシン上でこの種のアプリを実行して、私のためにリクエストURLを変更してください。 – Nate

答えて

2

はこれを試してみてください。

LIOR Face.comチーム

0

あなたが生成されている文字列がゴミである - ない有効なのparam文字列が、代わりに一緒にこれらの文字列をハッキングのparam1=value1?param2=value2&param3=value3

のように見える何か、なぜDictionary<string,string> paramコレクションにあなたの追加のパラメータを追加しないで、その後、http_build_queryてみましょう仕事をする?

そして、それはそれはHTTP通信を確認するためにFiddler2を使用し、その後、助けていない場合

....実際に生成された文字列がどのように見えるかを確認するために、デバッガを使用してから、解決しない場合。 (追加は認識/検出方法にPARAM属性)

public FaceAPI faces_detect(List<string> urls, string filename, List<string> ownerIds, List<string> attributes, string callBackUrl) 
{ 
    List<string> list = this.prep_lists(urls, ownerIds, attributes); 
    Dictionary<string, string> dict = new Dictionary<string, string>(); 

    dict.Add("urls", list[0]); 
    dict.Add("owner_ids", list[1]); 
    dict.Add("attributes", list[2]); 
    dict.Add("_file", "@" + filename); 
    dict.Add("callback_url", callBackUrl); 

    return this.call_method("faces/detect", dict); 
} 

、通常の方法を検出する呼び出し:...

関連する問題