Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1627 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [Résolu][WebServices&Ajax]problème de connexion juste avec ajax

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu][WebServices&Ajax]problème de connexion juste avec ajax

n°2268923
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 18:36:07  profilanswer
 

salut
 
il doit peut être y avoir un problème de sécurité
j'arrive à faire tout ce que je veux en local
je met les webservices sur mon site et là je n'y accède plus en ajax
par contre je peux y accéder en c# depuis mon local sur mon site
quand je met l'url dans chrome il m'affiche bien la page classique sur webServices/getStatsFromImport.asmx
j'ai cherché pas mal de temps là, j'ai pas trouvé grand chose :(
à part ça https://msdn.microsoft.com/fr-fr/li [...] .110).aspx
mais je me plante dans le web.config à mon avis, j'y comprend pas grand chose ;)
pourtant je n'ai rien fait de spécial pour que ça fonctionne en local
 
des idées ?
 
[edit]

un petit résumé s'il y a quelqu'un qui passe sur le post avec les mêmes problèmes
 - il n'y a pas besoin de mettre dans le web.config toutes les lignes que j'ai mis dans le 3ème post
 - pas besoin non plus d'entourer les méthodes c# webservice comme indiqué au point 4
 - à partir du point 5, vérifier tout de suite les retours du webservice par ajax (j'ai perdu beaucoup de temps avant d'avoir l'idée de faire ça) :
     - avec prototype.js, c'est dans le genre (il passe dans le onComplete même s'il y a failure) :

Code :
  1. <textarea cols="150" rows="40" id="txaWSResult"></textarea>
  2. <script language="javaScript">
  3. new Ajax.Request('<%=urlSite%>/webServices/getStatsFromImport.asmx/test',
  4. {
  5.   method: 'post',
  6.   parameters: { _recordId: _record_Id },
  7.   onCreate: function ()
  8.   {alert('onCreate');},
  9.   onComplete: function (response)
  10.   {
  11.    alert('complete -> ' + response.status);
  12.    alert('complete.text -> ' + response.responseText);
  13.    $('txaWSResult').value = response.responseText;
  14.   },
  15.   onSuccess: function (transport)
  16.   {
  17.    var response = transport.responseText || "no response text";
  18.    $('txaWSResult').value = transport.responseText;
  19.    alert('onSuccess');
  20.   },
  21.   onFailure: function () { alert('failure'); }
  22. });
  23. </script>



     - pour éviter les status 0 pour crossdomain interdits, j'ai fait ça pour urlSite -> urlSite = "http://" + Request.Url.Host.ToString();
     - et enfin en cas d'erreur 500, si l'erreur est "Request format is unrecognized for URL unexpectedly ending in",
     il faut avoir ça dans le web.config (dans la partie <system.web> ) :

Code :
  1. <webServices>
  2.    <protocols>
  3.     <add name="HttpSoap" />
  4.     <add name="HttpGet" />
  5.     <add name="HttpPost" />
  6.    </protocols>
  7.   </webServices>


 

voilou ;)


Message édité par bill_clinton le 02-11-2015 à 15:05:42
mood
Publicité
Posté le 01-11-2015 à 18:36:07  profilanswer
 

n°2268924
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 18:40:32  profilanswer
 

pourtant si on regarde ici  
https://msdn.microsoft.com/fr-fr/li [...] s.85).aspx
au paragraphe "L'élément webServices par défaut suivant n'est pas configuré explicitement "
ils disent que tout est déjà mis par défaut
 
ah j'oubliais, je suis en .net 4.0 pour le pool

n°2268926
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 19:30:45  profilanswer
 

avant j'avais pratiquement rien dans mon web.config
maintenant j'ai rajouté tout ça : (je l'ai pris d'ici : http://forums.asp.net/t/1916404.as [...] EB+CONFIG)

Code :
  1. <system.web>
  2.   <httpRuntime maxRequestLength="2097151" executionTimeout="3600" />
  3.   <compilation debug="true" urlLinePragmas="true" />
  4.   <customErrors mode="Off" />
  5.   <sessionState cookieless="UseCookies" mode="InProc" timeout="3600" useHostingIdentity="true" />
  6.   <httpHandlers>
  7.    <remove verb="*" path="*.asmx"/>
  8.    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  9.    <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  10.    <add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  11.   </httpHandlers>
  12. </system.web>
  13. <system.webServer>
  14.   <security>
  15.    <requestFiltering>
  16.     <requestLimits maxQueryString="100000000" maxAllowedContentLength="500000000" />
  17.    </requestFiltering>
  18.   </security>
  19.   <handlers>
  20.    <remove name="WebServiceHandlerFactory-Integrated"/>
  21.    <remove name="ScriptHandlerFactory"/>
  22.    <remove name="ScriptHandlerFactoryAppServices"/>
  23.    <remove name="ScriptResource"/>
  24.    <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  25.    <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  26.    <add name="ScriptResource" verb="GET,HEAD" path="ScriptResource.axd" preCondition="integratedMode" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  27.   </handlers>
  28. </system.webServer>
  29. <system.serviceModel>
  30.   <behaviors>
  31.    <serviceBehaviors>
  32.     <behavior name="ManagementServiceBehaviour">
  33.      <serviceDebug includeExceptionDetailInFaults="true" />
  34.      <serviceMetadata httpGetEnabled="true" />
  35.      <dataContractSerializer ignoreExtensionDataObject="false" maxItemsInObjectGraph="2147483646" />
  36.     </behavior>
  37.     <behavior name="">
  38.      <serviceMetadata httpGetEnabled="true" />
  39.      <serviceDebug includeExceptionDetailInFaults="false" />
  40.     </behavior>
  41.    </serviceBehaviors>
  42.   </behaviors>
  43.   <bindings>
  44.    <basicHttpBinding>
  45.     <binding name="BasicHttpBinding" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" closeTimeout="01:50:00" openTimeout="01:50:00" sendTimeout="01:50:00" receiveTimeout="01:50:00" >
  46.      <readerQuotas maxDepth="128" maxStringContentLength="8388608" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
  47.     </binding>
  48.    </basicHttpBinding>
  49.   </bindings>
  50.   <services>
  51.    <service behaviorConfiguration="ManagementServiceBehaviour" name="BusinessLogic.Facade.EntityFacade.Services.ManagementService">
  52.     <endpoint binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding" contract="BusinessLogic.Facade.EntityFacade.Contracts.IManagementService">
  53.      <identity>
  54.       <dns value="" />
  55.      </identity>
  56.     </endpoint>
  57.    </service>
  58.   </services>
  59. </system.serviceModel>


 
mais ça n'a pas servi à grand chose :(


Message édité par bill_clinton le 01-11-2015 à 19:34:58
n°2268928
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 20:15:09  profilanswer
 

je viens de faire ce qui est indiqué sur cette page https://msdn.microsoft.com/fr-fr/li [...] .110).aspx :
c'est à dire entourer mes méthodes avec
[ SoapDocumentMethod(Action="http://www.contoso.com/Time" )]

n°2268941
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 21:11:29  profilanswer
 

bon
il faut que je m'oriente là dessus je pense :
http://stackoverflow.com/questions [...] ms-xmlhttp
j'ai un response.status de 0 avec ajax

n°2268943
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 21:53:14  profilanswer
 

chrome m'avait transformé mon url de www.domaine.com à domaine.com
d'où le status à 0, on ne peut pas faire de crossdomain request
mais là maintenant j'ai un status à 500 :(

n°2268947
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 01-11-2015 à 22:46:15  profilanswer
 

j'ai mon erreur !!
"Request format is unrecognized for URL unexpectedly ending in '/test'."
 
pourtant ça fonctionne très bien en local ...
 
[edit]
ça fonctionne !!!!!!!!!!!!! ;);;;) :bounce: :bounce: :bounce:  
 
j'ai ajouté ça dans le web.config :
  <webServices>
   <protocols>
    <add name="HttpSoap" />
    <add name="HttpGet" />
    <add name="HttpPost" />
   </protocols>
  </webServices>
 
dans  <system.web>


Message édité par bill_clinton le 01-11-2015 à 22:54:54
n°2268990
bill_clint​on
nonon j'ai pas de stagiaire ..
Posté le 03-11-2015 à 02:55:42  profilanswer
 

je vois déjà les puristes avec mon textarea à 150 / 40
mais bon, on debug ou on ne debug pas ;)


---------------
vente système facility management http://facilitymanagement.over-blo [...] eraux.html

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [Résolu][WebServices&Ajax]problème de connexion juste avec ajax

 

Sujets relatifs
Probleme d'affichage de mes enregistrementsProblème de récupération d'informations database
Eclipse léger problème dans le tri des importsProblème "basique" de binding
ptite question php-AJAXProblème ouverture archive zip
Problème de migration du fichier .htpasswd de Linux a Windows.Problème Workbook.close Savechanges:= True
Problème adresse HTMLProblème avec FOREIGN KEY
Plus de sujets relatifs à : [Résolu][WebServices&Ajax]problème de connexion juste avec ajax


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR