私のWCFサービスは、WebInvoke属性を使用し、httpGetEnabledを使用して動作します。
[OperationContract]
[WebInvoke(Method="POST", UriTemplate = "/Function1")]
void Function1(Stream input);
[OperationContract]
[WebInvoke(Method="POST", UriTemplate = "/Function2")]
void Function2( Stream input );
httpsで動作させようとすると、UriTemplatesにアクセスできません。ただし、svcとwsdlにはアクセスできます。
<services>
<service behaviorConfiguration="SslBehavior" name="MyService">
<endpoint address="" binding="webHttpBinding" contract="IMyService" behaviorConfiguration="WebBehavior" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="SslBehavior">
<serviceMetadata httpsGetEnabled="True" />
<serviceDebug includeExceptionDetailInFaults="True"/>
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="WebBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
このサービスはIIS7でホストされています。私が見逃している明らかなものはありますか?可能な限り多くの構成の組み合わせを試しました。WebInvokeリンクの1つに投稿しようとすると、404エラーが発生します。
別の会社がこのサービスに投稿するため、RESTfullである必要があります
編集
私はバインディングノードでこれを試しました:
<webHttpBinding>
<binding name="SslBinding" transferMode="Streamed">
<security mode="None">
<transport clientCredentialType="None" />
</security>
</binding>
</webHttpBinding>
そして、エンドポイントにBindingConfigurationを設定します。同じ問題:(