Aller au contenu




#2

Mouquette

  • Groupe : Membre
  • Messages : 23
  • Inscrit(e) : 21/novembre/11

  • Humeur actuelle: Pensive

Réputation: 1
Neutre
C'est donc bien ce que je pensais, du côté serveur sa reste du PHP (ou de l'ASP, selon)
C'était surtout cette partie la qui était sombre pour moi
Donc rien de bien compliqué en fait
  • 0

#3

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Oui sa n'a rien de compliqué, aprés tous dépendera biensur de se que l'on codera comme type de WS

Coté serveur on peux avoire n'importe quelle language suporté par un serveur HTTP (C, C#, C++, Java, Perl, Python, VB, etc...)

Ce message a été modifié par goldbergg - 03 décembre 2011 - 22:39.

  • 0


#4

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
bonjour,
Merci bien pour ce tutoriel
juste je veux savoir comment faire pour consommer ce web service par client android
je suis entrain de faire un projet client(android) serveur : mon client à le droit de consulter seulement.
pour le web service je choisie de le faire en REST php mais je sais pas comment
pouvez vous m'aider SVP
  • 0

#5

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Salut,

Si tu veux faire appel a un webservice via une application android il te faudra faire appel a plusieur class:
-DefaultHttpClient pour pouvoire comuniqué avec le serveur
-httpput, httpost, httpget et httpdelete en fonction de la méthod a utilisé
-HttpResponse pour recupéré la reponsse
et en enffin JSONObject et JSONArray si tu doit ressevoire des reponsse en json (il existe aussi des class pour le XML).

Voici un petit exemple:
public void AppelGet() throws ClientProtocolException, IOException, JSONException{      

        DefaultHttpClient client = new DefaultHttpClient();

        String getURL = "URI de ton WebSevice";

        HttpGet get = new HttpGet(getURL);
        HttpResponse responseGet = client.execute(get);
        HttpEntity resEntityGet = responseGet.getEntity();

        if (resEntityGet != null) { //On a obtenue une reponsse
                String reponse = EntityUtils.toString(resEntityGet);
                reponse = "{\"tab\":" + reponse + "}"; 
                JSONObject jObject = new JSONObject(reponse);
                JSONArray itemArray = jObject.getJSONArray("tab");
        }
}


Autre exemple avec la methode post et passage de paramétre pour tester la connexion a un site, le WS retourn un booléen:
public Boolean TestConnect(String login2, String pass2){
        String PostURL = "URI de Mon WebService";
        HttpPost httppost = new HttpPost(PostURL);
        DefaultHttpClient httpclient = new DefaultHttpClient();
        
        try {
                List nameValuePairs = new ArrayList(); 
                        nameValuePairs.add(new BasicNameValuePair("Pseudo", login2)); //Paramétre 1
                        nameValuePairs.add(new BasicNameValuePair("Password", pass2)); //Paramétre 1
                        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

            HttpResponse response=httpclient.execute(httppost);
            BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
            String reponse = reader.readLine();
            int bool = Integer.parseInt(reponse); 
            
        boolean b;
            
            b = (bool == 0 ? false : true) ;
                if ({
                        return true;
                } else {
                        return false;
                }
        } catch (ClientProtocolException e) {
                        Toast.makeText(GAL_MOBILEActivity.this, "Erreur: ClientProtocolException - > "+e, Toast.LENGTH_LONG).show();
                        e.printStackTrace();
                        return false;
                } catch (IOException e) {
                        Toast.makeText(GAL_MOBILEActivity.this, "Erreur: IOException - > "+e, Toast.LENGTH_LONG).show();
                        e.printStackTrace();
                        return false;
                }
}

Si les exemple ne sont pas assé claire ou si je n'est pas repondu a ta question n'esite pas
  • 0


#6

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonsoir,
désolé pour le retard et merci pour votre réponse
en effet, mon projet consiste à la consultation d'une base de donné externe du grand surface via android.j'ai besoin de (GET) seulement et peut être (POST)
j'ai testé votre exemple en localhost mais j'ai aucun résultat pour celle là
pour les liste des utilisateurs ça marche mais si je veux consulter un unique utilisateur ça marche pas
autrement SVP pouvez vous m'informer si je doit utiliser votre exemple ou bien Zend Framework pour créer mon web service et avez vous des exemples explicatif pour m'aider c'est très urgent et comment faire pour sécuriser mon web service
merci infiniment
  • 0

#7

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Le lien que tu me fournie n'est pas significatif vue qu'il pointe vere ton PC et est accéssible que depuis ton PC.

A tu testé le WS qui ne fonctione pas sur un navigateur pour être sur qu'il fonctione bien?

A tu essayé d'envoyé les paramétre autrement que par l'URI, par exemple via la classe nameValuePairs?

DefaultHttpClient client = new DefaultHttpClient();
String getURL = "http://localhost/Utilisateur.php";
HttpGet get = new HttpGet(getURL);
List nameValuePairs = new ArrayList(); 
        nameValuePairs.add(new BasicNameValuePair("ID", 1));
get.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse responseGet = client.execute(get);
HttpEntity resEntityGet = responseGet.getEntity();
Au pire fournie moi ton code histoire de voire si il n'y a pas un probléme dans sa conception.

Pour se qui est du choi du framework, peut importe, zend founie un moyen de créé plusieur type de WS (SOAP, XML-RPC et REST) chacun a un moded'utilisation different, persso je te conseille REST car il est aussi performent et bien plus simple que les autre.
Persso je préfére codé tout a la main, surtous qu'il n'y a rien de bien compliqué.

Tu as peut être du remarqué que je fournie un fichier de ressource dans cette page : tu peux t'en inspiré, il est assé simple mais plutop complé pour ilustré le bon fonctionement ainssi qu'une bonne façon de réalisé simplement un WS.

Si certain detail t'échape tu peux aussi consulter cette page: http://forum.animese...les-webservice/
  • 0


#8

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonjour
merci bien pour votre réponse
juste je veux vous dire que je test mon web service en local avant de faire l'appel via le client android
concernant ça marche en localhost
maintenant je suis entrain de créer mon propre web service concernant mon application
juste je veux savoir est ce que le fichier .htaccess je le mettre dans le même dossier de mon webservice de plus puisque je besoin que de GET le fichier REST.php est inutile dans mon cas n'est ce pas?
merci infiniment pour ton aide et j'espère que je vous dérange pas par mes questions.
  • 0

#9

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Le fichier REST.php sert a créé les variable global $_PUT et $_DELETE donc non il n'est pas nessécaire.

Pour le .htaccess généralement on le mes a la racine du serveur, mais il devrais fonctioné si on le mes dans le repertoire qui contient le site, il suffit de bien configuré les directive a l'interieur.

Ce message a été modifié par goldbergg - 18 mai 2012 - 10:20.

  • 0


#10

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonjour,
merci bien pour votre aide
  • 0

#11

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonsoir,
désolé pour le dérangement je veux juste vous montrer mon code client
le problème que j'ai rien récupérer avec le client android
j'ai pris votre exemple pour la partie webservice

ci-dessous mon code client


public class GestionSurfaceActivity extends ListActivity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                // setContentView(R.layout.main);
                String result = null;
                InputStream is = null;
                JSONObject json_data = null;
                ArrayList nameValuePairs = new ArrayList();
                ArrayList donnees = new ArrayList();

                try {
                        // commandes httpClient
                        HttpClient httpclient = new DefaultHttpClient();
                        HttpPost httppost = new HttpPost("http://10.0.2.2/WEBSERVICE/LstProduit.php/");
                        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                        HttpResponse response = httpclient.execute(httppost);
                        HttpEntity entity = response.getEntity();
                        is = entity.getContent();
                } catch (Exception e) {
                        Log.i("taghttppost", "" + e.toString());
                        Toast.makeText(getBaseContext(), e.toString(), Toast.LENGTH_LONG)
                                        .show();
                }

                // conversion de la réponse en chaine de caractère
                try {
                        BufferedReader reader = new BufferedReader(new InputStreamReader(
                                        is, "UTF-8"));

                        StringBuilder sb = new StringBuilder();

                        String line = null;

                        while ((line = reader.readLine()) != null) {
                                sb.append(line + "\n");
                        }

                        is.close();

                        result = sb.toString();
                } catch (Exception e) {
                        Log.i("tagconvertstr", "" + e.toString());
                }
                // recuperation des donnees json
                try {
                        JSONArray jArray = new JSONArray(result);

                        for (int i = 0; i (this,
                                        android.R.layout.simple_expandable_list_item_1, donnees));
                } catch (JSONException e) {
                        Log.i("tagjsonexp", "" + e.toString());
                } catch (ParseException e) {
                        Log.i("tagjsonpars", "" + e.toString());
                }

        }



}

  • 0

#12

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Bon déjà je ne sais pas comment tu a construit ton WS, mais tu utilise la mauvaise méthode HTTP.

Tu fais un appel pour avoire la liste des produits et tu utilise la méthode POST.

Pour rappel:
GET - > appel (requete correspondante en SQL : SELECT)
POST -> soumission (requete correspondante en SQL : INSERT)
PUT -> Ajout/Modification (requete correspondante en SQL : UPDATE)
DELETE -> Supression (requete correspondante en SQL : DELETE)

Donc la méthode adequate serait plus HttpGet.

Autre chose, si tu n'envoie aucun paramétre, inutile d'utilisé la classe nameValuePairs
Voici pour moi a quoi devrait ressemblé le code (sans les instruction Try/Catch):
//J'instancie mon client
DefaultHttpClient client = new DefaultHttpClient();     
//J'appel mon WS
HttpGet get = new HttpGet("http://10.0.2.2/WEBSERVICE/LstProduit.php"); 
//Je recupére la réponsse
HttpResponse responseGet = client.execute(get);
HttpEntity resEntityGet = responseGet.getEntity();
//Si j'ai une reponsse...
if (resEntityGet != null) {
        //... je la recupére dans une chaine
        String reponse = EntityUtils.toString(resEntityGet);
        //Je place ma chaine(qui est un tableau JSON généré en PHP) dans un tableau associatif en JSON dont la clée de la premiére et unique case est "tab"
    reponse = "{\"tab\":" + reponse + "}";
        //Je convertie ma chaine en JSONObject
    JSONObject jObject = new JSONObject(reponse);
        //A partir de la clée "tab" de mon tableau assoc créé précédement, je recupére le contenu(le JSON généré par PHP donc) et le place dans un JSONArray
    JSONArray itemArray = jObject.getJSONArray("tab");
        //Je recupre le nombre d'élément...
    int nbItemArray = itemArray.length();
        //... pour pouvoire traiter mon tableau dans une boucle
        for (int i=0;i != nbItemArray; i++)
        {
                //traitement de mon tableau JSON
        }                                       
}


Autre chose, a tu testé en placant des Toast ou en utilisant le debogeur que tu ressois bien une reponsse avant d'essayé de la traité?
  • 0


#13

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonsoir,
merci pour votre aide
pour le web service c'est comme le votre
j'essayerais votre code pour la partie client
merci infiniement

Bonsoir
vraiment je trouve pas des mots pour vous remercie
j'ai testé votre code et ça va marcher
désolé pour le dérangement
merci

Ce message a été modifié par Nesse1040 - 16 août 2012 - 06:00.

  • 0

#14

Tornado

  • Groupe : Membre Ultime
  • Messages : 623
  • Inscrit(e) : 19/janvier/12

  • Humeur actuelle: Équilibré

Réputation: 56
Se fait un nom
Je dois te félicité...d'avoir rédiger ton tutoriel sans aucune aide. C'est pas que j'ai pas confiance.
Mais c'est quelque chose de rare. Donc +1 remerciement.

Je note sur mon carnet de le regarder en profondeur une fois mes partiels passé. C'est dommage que c'était pas pendant mon devoir de Web...mais bon on peut pas demander la lune non plus.

Ce message a été modifié par Anonymous - 19 mai 2012 - 19:23.

  • 0

120808034157392074.png
Par respect aux gérant du sites, ce spoiler cache un lien, merci de bien me contacter
si cela va à l'encontre du règlement du site.

Spoiler

S'occupe du Topic http://www.animeserv...illeurs-animes/  vive le YURI !!!

#15

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonsoir,
SVP pouvez vous m'aider et me montrer comment créer un web service php pour les images et les récupérer par android
en faite :
j'ai une liste de produit chaque produit à un id, nom, description,prix et image
je veux créer son web service le parser sous JSON et le récupérer par android, je veux lorsque je clic sur un produit qq dans ma liste view il m'affiche son image correspondant.J'ai réussi de récupérer les autres info sauf l'image je sais pas comment
Merci d'avance
  • 0

#16

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Bonjour,

Pour afficher une image dans un listview il faut dabort bien évidement recupérer le chemin de l'image sur forme d'une URL (ex : )

Donc dans ton PHP, quand tu créé ton tableau avec les diferente information sur les produit il faut que tu rajoute systématiquement un champ avec l'URL de l'image corespondante.

Enssuite il y a plusieur solution, persso voici celle que j'utilise:

Dans un premier temp tu créé ta view qui contiendra ton ListView:

android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:cacheColorHint="#00000000">



(la propriété cacheColorHint avec les valeur a 0 sert a evité des bug d'affichage)

Enssuite tu créé une vue a coté qui sera le modelle des items que contiendra ta ListView:


android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/ligne"
android:background="#0000">
android:id="@+id/img"
android:layout_gravity="center_vertical"
android:padding="3px"
android:layout_width="50dp"
android:layout_height="70dp"/>
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:paddingLeft="3px"
android:layout_weight="1">
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="ID"/>
android:textAppearance="?android:attr/textAppearanceMedium"
android:id="@+id/nom"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Nom"/>
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Description"/>
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Prix"/>




Dans mon exemple se fichier sera nomé affichageitem.xml

Puis pour le code Java:
//Je recupére ma ListView
ListView LST_Produits = (ListView) findViewById(R.id.listView1);

//Je déclare un tableau de HashMap qui servira a stocké mes item avant des affiché
ArrayList> listItem = new ArrayList>();

//Je déclare un hashMap qui sera l'equivalent de mes items dans le code
HashMap map;

//On boucle les donné recupére en JSON (pour plus d'info sur cette partie là je t'invite a lire les poste précedent)
for (int i = 1; i ();
        map.put("img", "Le chemin de mon image"));        
        map.put("ID", "L'ID");
        map.put("nom", "Le nom");
        map.put("description", "La description");
        map.put("prix", "Le prix");
        listItem.add(map);
}

//On complete enssuite le ListView
SimpleAdapter mSchedule = new SimpleAdapter (this.getBaseContext(), listItem, R.layout.affichageitem,  new String[] {"img", "ID", "nom", "description", "prix"}, new int[] {R.id.img, R.id.ids, R.id.nom, R.id.description R.id.prix});       
LST_Produits.setAdapter(mSchedule);

  • 0


#17

aladin2110

  • Groupe : Membre
  • Messages : 9
  • Inscrit(e) : 12/mai/12

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Bonsoir
désolé pour le retard
merci infiniment pour l'aider
  • 0

#18

exalid

  • Groupe : Membre
  • Messages : 35
  • Inscrit(e) : 08/septembre/12

  • Humeur actuelle: Blah

Réputation: 0
Neutre
A noter que sur Android afin de ne pas bloquer le main thread il est fortement conseillé d'utiliser une AsyncTask.
Cf la doc Android.
Je conseille clairement d'utiliser RoboGuice pour gérer les Async.
La méthode du dessus reste bonne ensuite perso j'utilise plutôt des HashMap mais ça revient à la même chose.

Un exemple avec les async :

public class CallWebServiceTask extends AsyncTask {
        private ProgressDialog dialog;
        protected Context applicationContext;
 
        @Override
        protected void onPreExecute() {
            this.dialog = ProgressDialog.show(applicationContext, "Calling", "Time Service...", true);
        }
 
        @Override
        protected String doInBackground(Void... params) {
 
            return Start.getTimeStampFromYahooService();
 
        }
 
        @Override
        protected void onPostExecute(String result) {
            this.dialog.cancel();
            String timestamp = Start.parseJSONResponse(result);
            timestamp = Start.UnixTimeStampToDateTime(timestamp);
            Start.this.getTxtTime().setText(timestamp);
        }
    }

Dans le preExecute tu es encore dans le main thread (UI thread) avant l'appel à la tache en background, le doInBackground comme son nom l'indique est l'endroit ou tu vas faire ton traitement qui sera dans l'async task, le postExecute te permet de récupérer ton résultat dans le main thread.

Ici ce n'est vraiment qu'un exemple, voici la page de la doc associée :
Réfères-toi à la partie "AsyncTask's generic types" et "The 4 steps" pour avoir plus de précision sur l'utilisation de ces méthodes.

Pour la gestion de la réponse passer par un buffered reader est un peu moche je trouve.

Pour des questions de performance l'utilisation du JSon est clairement conseillée mais la même chose est possible en XML.
Enfin abuse des frameworks à disposition d'Android. Le SDK commence a bien mûrir et de nombreux frameworks sont disponibles pour les développeurs.
RoboGuice facilite la vie avec l'ajout des annotations et injections de vue (super pratique plutôt que de passer par des vieux findViewByID partout dans ton code).
ORMLite et GreenDAO pour la gestion de la BDD embarquée sont plus que conseillés si jamais tu ne veux pas te coltiner les appels à la BDD via du vieux sqlite bien chiant.
A noter que ORMLite éprouve quelques problèmes en conjonction avec RoboGuice (donc du coup plutôt greendao).


Sinon pour le backoffice j'ai vu plus haut que quelqu'un parlait de php, de c++, de c, ...
Perso le php pour du webservice coté serveur, no way. On voit comment facebook a bien galéré a ses débuts avec le php, pour ensuite passer à l'HyperPhp par dépit vu que tout était déjà fait en php...
La seule chose que je puisse conseiller de ce côté la est clairement d'installer un apache, d'installer un tomcat, et roule ma poule en Java.
Y a des framework fait spécialement pour ça qui permettent de déployer une architecture sécu, restfull ou non, très vite.
Je pense notamment à Spring et plus particulièrement Spring sécurity qui sont déjà employés dans la plupart des grosses structures mondiales.
Le Java reste la référence en matière de flux sur le web, avec des outils simples et pré déployés pour les plus novices.

Ce message a été modifié par exalid - 10 septembre 2012 - 13:41.

  • 0

#19

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre

Sinon pour le backoffice j'ai vu plus haut que quelqu'un parlait de php, de c++, de c, ...
Perso le php pour du webservice coté serveur, no way. On voit comment facebook a bien galéré a ses débuts avec le php, pour ensuite passer à l'HyperPhp par dépit vu que tout était déjà fait en php...
La seule chose que je puisse conseiller de ce côté la est clairement d'installer un apache, d'installer un tomcat, et roule ma poule en Java.
Y a des framework fait spécialement pour ça qui permettent de déployer une architecture sécu, restfull ou non, très vite.
Je pense notamment à Spring et plus particulièrement Spring sécurity qui sont déjà employés dans la plupart des grosses structures mondiales.
Le Java reste la référence en matière de flux sur le web, avec des outils simples et pré déployés pour les plus novices.

Le PHP a beaucoup de cas particulié en fonction de l'OS, de la verssion (fast-cgi,...) et du compilo qui a servi pour généré les binaire(bon ca sa ne concerne que windows) (plus d'info sur la conf PHP de la techday 2012)
de plus php propose aussi d'exelent framework, on a même des ORM qui introduise linq !

Tu dit que java est la reference, j'ai entendu la même concernant l'ASP.NET.
En se moment dans la boite dans lequel je bosse je fais justement de l'ASP et certe c'est puissant, en 10 sec montre en main(et sans exagérer) je code un WS compatible REST et SOAP et que me générer du XML ou du JSON en fonction du Content-Type de ma requette...
(et le tous sans framework particulié bien sur, ni configuration, juste une simple fonction toute conne dans un fichier asmx ou wcf)
Bref juste pour dire y aucune techno au dessus de toute les autre, juste de preference, et de toute facon en entreprise généralement on nous l'impose!


(et dans le cas de se topic, se qui importe c'est la conception, le code on s'en fiche un peu)

Ce message a été modifié par Nesse1040 - 13 septembre 2012 - 06:03.

  • 0


#20

exalid

  • Groupe : Membre
  • Messages : 35
  • Inscrit(e) : 08/septembre/12

  • Humeur actuelle: Blah

Réputation: 0
Neutre

et Facebook n'est certainement pas une reference pour le PHP... (surtous que PHP a beaucoup de cas particulié en fonction de l'OS, de la verssion (fast-cgi,...) et du compilo [...]


Minute. Le PHP n'est pas un langage compilé, c'est un langage interprété. A la limite "tokenisé".
Pour le cas de Facebook, c'est une référence pour la charge sur les serveurs. Puisqu'effectivement Facebook est une des plus grosse plateforme qui utilisait du PHP.
Tu peux effectivement faire tout ce que tu veux avec n'importe quoi. Même t'amuser à faire du soap en asm. Il est ici question de performance. Quand on considère que le Java est une surcouche C, effectivement, théoriquement le C devrait être plus performant. Le problème c'est qu'en pratique, le Java est plus riche en terme de communauté et de framework à disposition (ce qui est lié à la communauté de développeur quelque part).
Tu as l'air de vouloir causer techno et usage, why not, je vais être bref pour ne pas trop dériver du sujet qui est l'utilisation de webservice côté serveur et client.
Effectivement, l'usage est important. Un tier ne va pas développer son site web en Java (dans ce cas un coup de PHP est bien plus rapide et simple niveau déploiment). A contrario une ss2i de 15000 collaborateur ne va pas déployer une plateforme web à la sncf en PHP.
La guéguerre du petit dev auto entrepreneur qui déploie des petites plateformes pour son client et du petit ingénieur qui travaille pour une grosse société de service est totalement puérile.

Chaque langage à son usage, chaque usage à son client.

Ce que j'entendais par l'utilisation du Java, c'était le déploiement de plateforme de grosse ampleur. Dans ce cas précis, le premier critère reste la performance. L'optimisation des coûts est la première préoccupation de tout le monde.
Perso je vois plus de plateforme qui offre des entry point sur des WS en Java ou .NET, que des plateformes en PHP.
En toute honnêteté je ne me lancerai pas dans du webservice sécu en PHP. Déjà que la gestion de certificat de sécu est horrible même en Java (le setup des http conduit avec le paluchage des Keystore et des Truster notamment) alors en PHP sur du gros webservice complet, j'imagine même pas. Et encore je ne parle pas de déploiement selon les environnements (dev, qualif, prod).

Donc perso, tous les langages OK, mais intelligemment et selon le besoin.

En se moment dans la boite dans lequel je bosse je fais justement de l'ASP et certe c'est puissant, en 10 sec montre en main(et sans exagérer) je code un WS compatible REST et SOAP et que me générer du XML ou du JSON en fonction du Content-Type de ma requette...


Y a un mais ? Je comprends pas bien ta phrase.

Ce message a été modifié par Nesse1040 - 13 septembre 2012 - 06:12.

  • 0

#21

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre
Pour PHP je parle de la compilation des source (et au passage un code PHP peux être compilé, tous comme il peut être utilisé en CLI les utilisation d'un language ne se limite pas forcement a celle que l'on connait le mieux), il a été prouvé (pour les verssion windows en tous cas) que les binaire proposé (officiellement) ne proposais pas tous les même perf(pour une même verssion de PHP) et je parle de différence énorme.

Tu as l'air de vouloir causer techno et usage, why not, je vais être bref pour ne pas trop dériver du sujet qui est l'utilisation de webservice côté serveur et client.

Pas du tous et le sujet c'est la conception d'un WS pas l'utilisation, les extrait de code fourni ne sont qu'un exemple pour ceux qui aimerais voire a quoi sa ressemble simplement.
Se topic n'a pour seul but d'aidé un debutant (dans le domaine des WS REST) a concevoire un WS en fonction de sont besoin.
J'aimerai simplement evité de partir en HS sur un debat qui est a coté de la plaque.

Y a un mais ? Je comprends pas bien ta phrase.

Oui autant pour moi, en faite j'ai modifier mon poste a plusieur rerprise car je le trouvé trop agressif et j'ai oublié de faire certaine correction, en faite je voulai dire que malgré les perf, la simplicité, etc... de la platforme .NET sa n'était pas pour autant que c'était THE réfférence malgré les avantage, il y a certaine chose que je fais beaucoup plus facillement en PHP par exemple.
En gros le message que je voulais faire passé, c'est qu'aux dela des message marketing comme quoi tel techno c'est la reference etc... il n'y aucun language qui surpace les autre ni de techno qui surpace les autre, on a juste des chose plus ou moin adapté a certain besoin.

Ce message a été modifié par goldbergg - 13 septembre 2012 - 18:23.

  • 0


#22

toninio23

  • Groupe : Membre
  • Messages : 1
  • Inscrit(e) : 09/mars/13

  • Humeur actuelle: None Chosen

Réputation: 0
Neutre
Hello,

ton lien pour le téléchargement de ton fichier ZIP ne fonctionne plus,
est ce que tu pourrais le mettre en download.

J'ai un projet pour mon travail de concevoir un WebService avec Rest, je ne comprends pas tout pour l'instant et je pense que ton code pourrait m'aider énormément.

D'avance merci pour ta réponse, avec mes meilleures salutations.

Toninio23
  • 0

#23

Tornado

  • Groupe : Membre Ultime
  • Messages : 623
  • Inscrit(e) : 19/janvier/12

  • Humeur actuelle: Équilibré

Réputation: 56
Se fait un nom
Quand je vois la complexité de la chose, c'est là où je me dis que j'ai bien fais de pas prendre développement (avec du web service) comme option.
  • 0

120808034157392074.png
Par respect aux gérant du sites, ce spoiler cache un lien, merci de bien me contacter
si cela va à l'encontre du règlement du site.

Spoiler

S'occupe du Topic http://www.animeserv...illeurs-animes/  vive le YURI !!!

#24

goldbergg

  • Groupe : S-DEV
  • Messages : 159
  • Inscrit(e) : 06/octobre/11

  • Humeur actuelle: None Chosen

Réputation: 42
Neutre


Dans se lien il y a deux fichier, le ressource avec les code de base et Uwamp, c'est un server wamp preconfigurer avec le WS

Je suis désolé pour les liens, il y a un blaireau qui s'amuse a piraté mon server, il a toujour pas compris que je ne l'utilisé plus, normalement d'ici le moi prochain je devrais avoir mon nouveau server avec cette fois beaucoup plus de protection contre les attaque

si les liens repante d'ici la contacté moi par MP pour me prevenir
  • 0






0 utilisateur(s) dans ce forum

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)