2010-01-25 21 views
5

पर डब्ल्यूसीएफ में एसएसएल पर वेबएचटीटीपी और नेटएचटीटीपी बाइंडिंग दोनों को कॉन्फ़िगर करना हम आरईएसटी पर हमारी डब्ल्यूसीएफ सेवाओं का खुलासा करना चाहते हैं और एसएसएल के साथ दोनों टीसीपी को सुरक्षित करना चाहते हैं। हमारे पास Azure और उचित मैपिंग सेटअप पर अपलोड किया गया एक वैध SSL है ताकि https://service.ourdomain.com पर काम करना चाहिए।एज़ूर

मैंने दो एंडपॉइंट बाइंडिंग, आरईएसटी सेवाओं के लिए वेबहट्प बाइंडिंग और टीसीपी के लिए NetHttp बाइंडिंग के कस्टम बाइंडिंग की स्थापना की है।

मैं मैं webHTTP के साथ काम कर एसएसएल है लगता है लेकिन जब मैं कोशिश करते हैं और NetHTTP के लिए बाध्यकारी कस्टम में httpsTransport सक्षम मैं त्रुटि मिलती है

"परिवहन तत्व जोड़ा नहीं जा सकता 'httpTransport'। बाध्यकारी में एक और परिवहन तत्व पहले से मौजूद है प्रत्येक बाध्यकारी के लिए केवल एक परिवहन तत्व हो सकता है "

सभी कॉन्फ़िगरेशन वेबरोल web.config में किया गया है, मैंने यहां अन्य डब्ल्यूसीएफ प्रश्नों को सबमिट किया है सिल्वरलाइट लोगों द्वारा और उन्होंने एसएसएल पर वेब एचटीटीपी के साथ मदद की लेकिन बाइनरी सामान ने मुझे स्टंप कर दिया।

क्या एक ही एसएसएल डोमेन से आरईएसटी और टीसीपी डब्ल्यूसीएफ सेवाओं को चलाने के लिए संभव है, यदि ऐसा है तो मुझे जानना अच्छा लगेगा?

<system.serviceModel> 
<bindings> 
    <webHttpBinding> 
    <binding name="SecureWebHttpBinding"> 
     <security mode="Transport"> 
     <transport clientCredentialType="None" /> 
     </security> 
    </binding> 
    </webHttpBinding> 

    <customBinding> 
    <binding name="NetHttpBinding"> 
     <binaryMessageEncoding /> 
     <!--<httpsTransport authenticationScheme="None" />--> 
    </binding> 
    </customBinding> 
</bindings> 

<behaviors> 
    <endpointBehaviors> 
    <behavior name="webBehavior"> 
     <webHttp /> 
    </behavior> 
    </endpointBehaviors> 

    <serviceBehaviors> 
    <behavior name="RestService"> 
     <serviceMetadata httpsGetEnabled="true" /> 
     <serviceDebug includeExceptionDetailInFaults="true" /> 
    </behavior> 

    <behavior name="BinaryService"> 
     <serviceMetadata httpsGetEnabled="true" /> 
     <serviceDebug includeExceptionDetailInFaults="true" /> 
    </behavior> 

    </serviceBehaviors> 
</behaviors> 

<services> 
    <service behaviorConfiguration="RestService" name="WebService.Rest"> 
    <endpoint address="Achievements" 
       binding="webHttpBinding" 
       bindingConfiguration="SecureWebHttpBinding" 
       behaviorConfiguration="webBehavior" 
       contract="WebService.JSON.IAchievementJSON"/> 
</service> 

    <service behaviorConfiguration="BinaryService" name="WebService.Binary"> 
    <endpoint address="Achievements" 
       binding="customBinding" 
       bindingConfiguration="NetHttpBinding" 
       contract="WebService.BinaryInterfaces.IAchievementBinary"/> 
    </service> 
</services> 
</system.serviceModel> 

उत्तर

1

दोनों बाइंडिंग के लिए आपका एंडपॉइंट पता समान है। उनमें से एक को उपलब्धियां/बिन या कुछ में बदलने का प्रयास करें। यह आपकी समस्या को हल करना चाहिए।

संबंधित मुद्दे