webservicehost enable consume c# wcf rest https web-config

enable - wcf service c# https



No se pudo encontrar una dirección base que coincida con el esquema https para el punto final con enlace WebHttpBinding. Los esquemas de direcciones base registradas son (4)

He pasado por varios sitios web que sugieren una solución a este problema, pero todavía no puedo deshacerme de él.

Mi WebConfig:

<bindings> <webHttpBinding> <binding name="SecureBasicRest"> <security mode="Transport" /> </binding> </webHttpBinding> </bindings> <behaviors> <serviceBehaviors> <behavior name="svcBehavior"> <serviceMetadata httpsGetEnabled="true"/> <serviceDebug includeExceptionDetailInFaults="false"/> </behavior> </serviceBehaviors> <endpointBehaviors> <behavior name="svcEndpoint"> <webHttp helpEnabled="true"/> <enableWebScript/> </behavior> </endpointBehaviors> </behaviors> <services> <service name="SvcContract.Authenticate" behaviorConfiguration="svcBehavior"> <endpoint binding="webHttpBinding" bindingConfiguration="SecureBasicRest" behaviorConfiguration="svcEndpoint" name="webHttp" contract="SvcContract.Authenticate" /> </service> </services> http://localhost:6188/Authenticate/Login?username=user&password=pass&ip=127.0.0.1

Espero que alguien pueda ayudar. ¡Gracias por adelantado!.

Editar

Tengo que hacer que esto funcione con
https://localhost:6188/Authenticate/Login?username=user&password=pass&ip=127.0.0.1


Cambie <serviceMetadata httpsGetEnabled="true"/> a <serviceMetadata httpsGetEnabled="false"/> . Le está diciendo a WCF que use https para el punto final de metadatos y veo que está exponiendo su servicio en http, y luego aparece el error en el título.

También debe configurar <security mode="None" /> si desea utilizar HTTP como lo sugiere su URL.


Debería habilitar el enlace https en el lado del servidor. IISExpress en este caso. Seleccione Propiedades en el proyecto del sitio web en el explorador de soluciones (no haga doble clic). En el panel de propiedades, entonces necesita habilitar SSL.


En la etiqueta de punto final, debe incluir la dirección de propiedad = ""

<endpoint address="" binding="webHttpBinding" bindingConfiguration="SecureBasicRest" behaviorConfiguration="svcEndpoint" name="webHttp" contract="SvcContract.Authenticate" />


Para que funcione, debe reemplazar una ejecución de esta línea de código serviceMetadata httpGetEnabled="true"/> http en lugar de https y security mode="None" />