Ben HTTP için doğru çalışır ancak HTTPS kullanmaya çalıştığınızda bana bu hatayıServiceStack Sabun 1.2 HTTPS Müşteri
ServiceStack.WebServiceException: The provided URI scheme 'https' is invalid; ex
pected 'http'.
Parameter name: via ---> System.ArgumentException: The provided URI scheme 'http
s' is invalid; expected 'http'.
Parameter name: via
at System.ServiceModel.Channels.HttpChannelFactory`1.ValidateCreateChannelPar
ameters(EndpointAddress remoteAddress, Uri via)
at System.ServiceModel.Channels.HttpChannelFactory`1.OnCreateChannelCore(Endp
ointAddress remoteAddress, Uri via)
at System.ServiceModel.Channels.ChannelFactoryBase`1.InternalCreateChannel(En
dpointAddress address, Uri via)
at System.ServiceModel.Channels.ServiceChannelFactory.ServiceChannelFactoryOv
erRequest.CreateInnerChannelBinder(EndpointAddress to, Uri via)
at System.ServiceModel.Channels.ServiceChannelFactory.CreateServiceChannel(En
dpointAddress address, Uri via)
at System.ServiceModel.Channels.ServiceChannelFactory.CreateChannel(Type chan
nelType, EndpointAddress address, Uri via)
at System.ServiceModel.ChannelFactory`1.CreateChannel(EndpointAddress address
, Uri via)
at System.ServiceModel.ClientBase`1.CreateChannel()
at System.ServiceModel.ClientBase`1.CreateChannelInternal()
at System.ServiceModel.ClientBase`1.get_Channel()
at ServiceStack.WcfServiceClient.Send(Message message)
at ServiceStack.WcfServiceClient.Send[T](Object request)
--- End of inner exception stack trace ---
at ServiceStack.WcfServiceClient.Send[T](Object request)
at ElectronicServiceInterface.ESIClient.Login()
Ben kendinden imzalı sertifika kullanıyorum
verir ama bir ServiceStack
tabanlı Sabun İstemci, ben Soap hizmetimi başarıyla çağırmak için curl kullanabiliyorum. Bu bana, sorunun istemci tarafında olduğunu gösteriyor.
My kod Yukarıdaki örnekte istek/yanıt DTO sınıfı kullanımını göstermektedir
using (var client = new Soap12ServiceClient(Uri))
{
var request = new MyRequestObject { Username = Username, Password = Password };
var response = client.Send<MyResponseObject>(request);
}
çizgisinde gider.
HTTPS ile yapılandırma dosyaları kullanmadan, yalnızca kod kullanmadan çalışmak için ne yapmam gerekiyor?
hizmetleri hosting kod/yapılandırmayı ekleyin:
aşağıdaki SSL nötr müşteri ile gerekli işlevselliği elde başardı. – silver@silver Yapılandırma yok. En azından istisnayı tetikleyen 'gönder' çağrısını gösteren biraz daha fazla kod ekledim. Sabun servisinin kendisi ServiceStack tabanlı bir hizmet değildir (yalnızca istemci), ancak kodun aslında diğer uçta sunucuya ulaştığından emin olunmaz. –