2017-02-21 14 views
0

私はこのコードをテストして初めて動作しました。今私は空の応答を得る。しかし、郵便配達で私はその返答を得ることができます。 Jsonは正しく読み込まれていないようです。私は400エラーを返します。HttpClientはasp.netで動作しません(郵便配達員で働く)

private Guid GetToken() 
{ 
var client = new HttpClient(); 
var uri = "url"; 
var jsonInString = JsonConvert.SerializeObject(new Authorization()); 

var response = client.PutAsync(uri, new StringContent(jsonInString, Encoding.UTF8, "application/json")).Result; 
var x = response.Content.ReadAsStringAsync().Result; 

if(x=="") 
    return Guid.Empty; 

return new Guid(response.Content.ReadAsStringAsync().Result); 
} 

public class Authorization 
{ 
    public string _x; 
    public Guid _y; 
    public Guid _z; 
    public long _a; 
    public long _b; 

    public Authorization() 
    { 
     x = 123; //dummy data 
     y = xx-xx-xx-xxxxx-xx-xxxx; 
     z = xx-xx-xx-xxxxx-xx-xxxx; 
     a = 123; 
     b = 123; 
    } 
} 
+0

HTTPリクエストの「Httpコード400」が残ります。これは、アプリケーションのバックエンドが指定された要求を処理できないことを意味します。たぶんあなたはメソッド(Get/Post)をPostmanとあなたの実際のアプリケーションと混合しました。 – reporter

+0

移送方法を宣言するのを忘れた可能性はありますか? – reporter

+0

このメソッドはPUTですが、実際には何も変更していません。これは正しいvar response = client.PutAsync(uri、new StringContent(jsonInString、Encoding.UTF8、 "application/json"))です。 –

答えて

0

私はそれを解決することができました。問題は、Json objectの属性の名前でした。

は私が Resharperを使用し、それが(アンダースコアに注意) _id 同上からJson objectで私の変数の名前を変更しました。

関連する問題