“Impossible de trouver une adresse de base qui correspond le schéma http pour le point de terminaison avec la liaison WSHttpBinding. Enregistré adresse de base, les régimes de []”
J'ai été par le biais de Débordement de Pile et de suivi un tutoriel en ligne pour SSL Et WebHttpBinding.
J'obtiens la même erreur que mentionnées. J'ai repris la vieille web config comme indiqué ci-dessous. Mon site en https fonctionne très bien, et j'ai ajouté mon WCF dans le cadre du site pour éviter d'avoir à ouvrir un nouveau port.
Que j'essaye de faire quelque chose comme ça maintenant, quand je reçois l'erreur:
https://localhost/_vti_bin/TestingSQL/sample.svc/mex
<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<services>
<service name="SharePointBits.Samples.WCFService.SampleService" behaviorConfiguration="SharePointBits.Samples.WCFService.SampleServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="https://testsite/_vti_bin/TestingSQL/Sample.svc"/>
</baseAddresses>
</host>
<endpoint address="https://localhost/_vti_bin/TestingSQL/Sample.svc" binding="wsHttpBinding" contract="SharePointBits.Samples.WCFService.ISampleService"
bindingConfiguration="wsHttpBindingEndpointBinding">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/>
</service>
</services>
<bindings>
<wsHttpBinding>
<binding name="wsHttpBinding">
<security mode="Transport">
<transport clientCredentialType="None"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="SharePointBits.Samples.WCFService.SampleServiceBehavior">
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpsGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
<!--<behavior name="">-->
<!--<serviceMetadata httpGetEnabled="true" />-->
<!--</behavior>-->
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>'
Après j'ai ajouté l'adresse de mon site web une nouvelle erreur se produit:
Ne pouvait pas trouver une adresse de base qui correspond à https pour l'
point de terminaison avec la liaison MetadataExchangeHttpsBinding. Enregistré base
adresse régimes sont [].
J'ai essayé les deux façons et les deux ont des erreurs.
L'ajout d'une adresse absolue de metadatabinding
me met cette erreur:
La HttpsGetEnabled propriété de ServiceMetadataBehavior est définie sur true
et le HttpsGetUrl propriété est une adresse relative, mais il n'y a pas de
https adresse de base. Fournir un https adresse de base ou un ensemble
HttpsGetUrl à une adresse absolue.
À l'aide de l'adresse de base, j'obtiens cette erreur:
Ne pouvait pas trouver une adresse de base qui correspond à https pour l'
point de terminaison avec la liaison MetadataExchangeHttpsBinding. Enregistré base
adresse régimes sont [].
Note: j'ai changé le code ci-dessus à l'aide de l'adresse de base.
OriginalL'auteur tang fire | 2012-09-23
Vous devez vous connecter pour publier un commentaire.
Vous avez une MEX point de terminaison avec une adresse qui fait WCF pense que c'est relatif, mais vous n'avez fourni une adresse de base. Changer le MEX point de terminaison, par exemple:
Soit ça, ou spécifier un BaseAddress et l'utiliser sur vos points de terminaison.
En outre, vous pouvez ajuster la serviceMetaData élément, plus précisément le httpsGetUrl.
Juste assez. Avez-vous essayé de modifier les serviceMetaData élément encore? Plus précisément le httpsGetUrl? Ou essayé de supprimer temporairement le MEX point de terminaison?
Oui! vous avez raison! L'ajout de httpsGetUrl de travaux et de mon point de terminaison est faux, j'ai inclus mon fichier de service de nom qui a été donné d'erreur indiquant l'url est déjà enregistré. Merci beaucoup pour votre temps! Merci!
OriginalL'auteur Jeroen