System.Net.Http で HttpClient を使用して、以下のように Web サービスへの要求を行います。
using (var client = new HttpClient())
{
using (var response = client.GetAsync(url).Result)
{
var result = response.Content.ReadAsStringAsync().Result;
}
}
サンドボックス アプリケーションとライブ アプリケーションがあります。サンドボックス アプリケーションには (共有リポジトリ内に) 同一のコードがあり、正常に動作しますがclient.GetAsync(url).Result
、ライブ アプリケーションで呼び出されると、何らかの理由で Fiddler が、要求された URL がエンコードされており、要求が台無しになっていることを示します。
要求された URL は次のようになります。
/advert?paginate=1&page=1&language=en&filters[updated_at][ge]=2016-03-21%2012:19:05
しかし、最終的には次のようになります。
/advert?paginate=1&page=1&language=en&filters%5Bupdated_at%5D%5Bge%5D=2016-03-21%2012:19:05
理由はありますか?ありがとう
NB Imは、.NET Framework 4.5でNugetのMicrosoft.Net.Httpライブラリを使用しています