2010-06-13 3 views
3

J'ai vu l'exemple de M. Bob concernant Delphi 2010 Datasnap, je suis impressionné. Mais ma question est ce que si le client est connecté via un serveur proxy? comment pourrais-je définir le proxy dans le client?Delphi DataSap dans le serveur proxy HTTP

merci ...

+0

M. Bob ou le Dr Bob (42)? Cela aiderait si vous liez ou décrivez au moins l'échantillon auquel vous faites référence. – Remko

Répondre

6

Oubliez D2010 Datasnap. C'est toujours une solution à demi-support qui manque beaucoup de flexibilité et de sécurité. Il ne fonctionnera que dans des scénarios très simples, et il est inutilisable dans toute application réelle en raison de ses nombreuses failles.

Mise à jour: parce que je suis dit que ma réponse était argumentative et pas utile, je vais vous donner la réponse complète: les connexions via un proxy - mais un transparent - ne sont pas pris en charge. Si vous regardez l'implémentation de TDSHTTPNativeClient, vous verrez qu'il instancie un composant TidHTTP, ce qui permettrait de définir un proxy, mais l'implémentation a totalement ignoré la nécessité de définir un proxy, car, vous savez, les proxy sont si rarement utilisés aujourd'hui qu'il n'y avait pas besoin d'y penser;). Ce composant est privé, vous ne pouvez donc pas y accéder facilement. Vous pouvez essayer avec du code RTTI, ou vous pouvez essayer de modifier vous-même l'unité DSHTTPLayer.pas pour ajouter les pièces manquantes. Tout cela pour définir ce qui aurait dû être une fonctionnalité de base prise en charge hors de la boîte. Mais tant que vous essayez d'utiliser cette Datasnap, vous rencontrerez beaucoup d'autres problèmes de base, regardez dans Quality Central pour eux. Encore une fois, mon conseil est d'éviter cette Datasnap à moins que vous ayez des besoins d'accès à distance très basiques, jusqu'à ce qu'Embarcadero en fasse une véritable bibliothèque d'accès à distance professionnelle et non un jouet.

Mise à jour 2: J'ai ajouté une demande de soutenir une procuration à Quality Central, #85467

+0

Je ne pense pas que votre réponse est correcte et ne définit pas l'état actuel de Datasnap. Il existe d'autres solutions d'accès à distance matures, mais Datasnap est bien défini et absolument flexible. –

+1

C'est utile parce que c'est juste du temps perdu en utilisant D2010 Datasnap. Il manque tellement de fonctionnalités que c'est juste une implémentation de jouet. J'ai beaucoup utilisé Datasnap (son ancienne implémentation DCOM) depuis son introduction dans Delphi 3 et je sais de quoi je parle. Au lieu de me plaindre de ma réponse, pourquoi n'avez-vous pas fourni une réponse démontrant la flexibilité de Datasnap? –

+0

Delphi XE DataSnap gère (enfin!) La communication HTTPS. C'est un pas dans la bonne direction. Bien sûr, d'autres fonctionnalités de sécurité font encore défaut. Par exemple, il n'y a pas d'authentification par requête ni de vérification de service par utilisateur. La plupart des services RESTful s'appuient sur HTTPS pour leur sécurité, lors de la connexion sur Internet - l'utilisation de HTTPS est donc une pratique courante. Voir http://blog.synopse.info/post/2011/05/24/How-to-implement-RESTful-authentication pour plusieurs autres directions. –

0

@Idsandon: Comment gentil de votre part pas lien vers votre article critique sur ce sujet ;-) Je ne peux pas m'empêcher de lier: http://www.sandon.it/?q=node/57 - en particulier les considérations de sécurité ne doivent pas être ignorées, alors merci pour cette analyse détaillée.