2

ASP.NET MVC は TEST Server で次のエラーをスローしますが、これは Developer マシンでは再現できませんでした。

MVC から WebAPI サービスに接続しようとするとエラーが発生する

「http」および「https」スキームのみが許可されます。パラメータ名: requestUri

他の質問は主に WCF バインディングについて話しているため、回答を得ることができませんでした。

コード:

var credentials = "username:Password";
var encoded = Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes(credentials));
this.client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", encoded);
System.Net.Http.HttpClient client = new HttpClient();
HttpResponseMessage response = client.GetAsync(URL).Result; 

注:ブラウザーから WebAPI URL にアクセスすると、データが返されます。

4

1 に答える 1

6

パラメータに何があるかどうかを予想して、またはURLで始まらないと思います。これが機能するには、これら 2 つのいずれかから開始する必要があります。http://https://

したがって、URL現在読んでいる場合(URLが a であると仮定string):

mycompany.com/myservices

次のいずれかに変更する必要があります。

http://mycompany.com/myservices

または

https://mycompany.com/myservices

URLが ではなくstringのインスタンスである場合は、System.Uriこのオブジェクトを作成するときに同様のことを行うか、 を設定する必要がありますURL.Scheme

于 2013-08-13T15:29:45.913 に答える