405: Méthode Non Autorisée

EDIT: Résumé: Il semble que mon application web peut être consulté par toute personne (uniquement firefox ou chrome) et par moi en utilisant mon ordinateur principal. Si j'essaie d'accéder à http://luiscarlosch.com/WebFormClean.aspx partir de n'importe quel autre de mes LAN il obtient une erreur 405

Je peux tout à fait appel à un web WCF méthode à partir de localhost. J'ai publié sur ce serveur: http://luiscarlosch.com/WebFormClean.aspx (seulement firefox ou chrome)
avec Visual Studio outil de publication et il fonctionne très bien. Le problème est alors d'essayer d'y accéder depuis un autre ordinateur. Je reçois la 405: Méthode Non Autorisée.
Mais Il fais beaucoup de sens, car Il fonctionne très bien lorsque j'ai accès à distance de l'ordinateur de l'éditeur comme je l'ai dit.
Une idée?

[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class ContactProxy
{
    [WebGet()]
    [OperationContract]
    public Contact getByID(int IDContact)
    {
        Contact contact = new Contact(IDContact);
        return contact;
    }
    [OperationContract]
    public EntityData insertEntityData(int IDEntityDataFieldType, int IDContact, String value)
    {
        //Contact contact = new Contact();
       //contact.insertEntityData(IDEntityDataFieldType, IDContact, value);
        EntityData entityData = new EntityData();
        entityData.save(IDEntityDataFieldType, IDContact, value);

        return entityData;
    }
}

Ni la méthode semble fonctionner.

J'ai juste remarqué que certains utilisateurs ont pu accéder à http://luiscarlosch.com/WebFormClean.aspx parce qu'ils changent les valeurs. Donc. certains clients peuvent lire les méthodes mais certains cant. Ce qui devrait arriver.

De Configuration Web De

<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<customErrors mode="Off"/>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" />
</providers>
</membership>
<profile>
<providers>
<clear/>
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
</providers>
</profile>
<roleManager enabled="false">
<providers>
<clear/>
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="MyServiceTypeBehaviors" >
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="WebApplicationTest.WCFProxy.EmployeeProxyAspNetAjaxBehavior">
<enableWebScript />
</behavior>
<behavior name="WebApplicationTest.WCFProxy.EntityDataFieldCollectionProxyAspNetAjaxBehavior">
<enableWebScript />
</behavior>
<behavior name="WebApplicationTest.WCFProxy.Service1AspNetAjaxBehavior">
<enableWebScript />
</behavior>
<behavior name="WebApplicationTest.WCFProxy.ContactProxyAspNetAjaxBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"
multipleSiteBindingsEnabled="true" />
<services>
<service name="WebApplicationTest.WCFProxy.EmployeeProxy"  behaviorConfiguration="MyServiceTypeBehaviors" >
<endpoint address="" behaviorConfiguration="WebApplicationTest.WCFProxy.EmployeeProxyAspNetAjaxBehavior"
binding="webHttpBinding" contract="WebApplicationTest.WCFProxy.EmployeeProxy" />
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
</service>
<service name="WebApplicationTest.WCFProxy.EntityDataFieldCollectionProxy"  behaviorConfiguration="MyServiceTypeBehaviors" >
<endpoint address="" behaviorConfiguration="WebApplicationTest.WCFProxy.EntityDataFieldCollectionProxyAspNetAjaxBehavior"
binding="webHttpBinding" contract="WebApplicationTest.WCFProxy.EntityDataFieldCollectionProxy" />
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
</service>
<service name="WebApplicationTest.WCFProxy.Service1">
<endpoint address="" behaviorConfiguration="WebApplicationTest.WCFProxy.Service1AspNetAjaxBehavior"
binding="webHttpBinding" contract="WebApplicationTest.WCFProxy.Service1" />
</service>
<service name="WebApplicationTest.WCFProxy.ContactProxy" behaviorConfiguration="MyServiceTypeBehaviors" ><!--new-->
<endpoint address="" behaviorConfiguration="WebApplicationTest.WCFProxy.ContactProxyAspNetAjaxBehavior"
binding="webHttpBinding" contract="WebApplicationTest.WCFProxy.ContactProxy" />
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
</service>
</services>
<bindings />
<client />
</system.serviceModel>
</configuration>
  • Est-il le REPOS de service? Nous avons besoin de plus d'informations (contrat, config, etc.) ...
  • Thankx. Je viens de poster quelques infos.
  • Semble IIS est de bloquer la POSTE (ou autre) des demandes.
  • a couru dans tout cela plus tôt aujourd'hui, et il s'est avéré être en raison de webdav. publier vos stacktrace ou de ce module est de lancer l'erreur.