2010-02-28 8 views
2

J'ai construit une application mobile dans J2ME et il lit les données d'un site Web. En WTK (boîte à outils sans fil) tout fonctionne maintenant, mais quand je teste l'application samen sur mon appareil mobile (nokia), il se comporte différemment: Il donne un autre type de html: il n'affiche pas de tag <hr>, mais un <hr/> tag.j2me lecture html diffère entre WTK et le périphérique

Il est possible que le site Web distant que j'essaie de lire se comporte différemment pour différents clients, mais je suppose que ce n'est pas le cas.

Qu'est-ce que cela peut être? Différents types d'encodage pour chaque client? Je ne suis pas familier avec ça.

Répondre

1

Peut-être que votre hypothèse est incorrecte. <hr /> est un XHTML end tag, de sorte que le site auquel vous accédez peut renvoyer une version différente (XHTML) de la page lorsque vous demandez à partir du périphérique réel.

Le site distant vérifiera l'en-tête User-Agent dans votre demande et décidera comment rendre la page en fonction de ce qu'elle trouve. Vous pouvez vérifier cela en demandant la même page en utilisant un programme comme curl pour chacun des agents d'utilisateur en question.

EDIT

Comme commenté par QuickRecipesOnSymbianOS, l'agent utilisateur que vous configurez pourrait être de se perdre sur le chemin vers le site distant. Peut-être que vous pouvez utiliser un site comme http://www.useragentstring.com/ pour voir ce qui se passe. Une autre idée était que si vous utilisez un réseau mobile lorsque vous accédez au site à partir du périphérique réel, plutôt que de dire WIFI, l'opérateur du réseau peut avoir implémenté quelque chose qui modifie le code HTML renvoyé par le site distant.

+0

Merci pour votre réponse! Dans mon code, j'ai mis l'en-tête User-Agent à une certaine valeur. De cette façon, j'utilise le même User-Agent dans les deux cas. Pensez-vous que cela sera écrasé avec la valeur réelle plus tard peut-être? – hsmit

+0

Il est tout à fait possible que l'implémentation J2ME sur votre périphérique remplace l'en-tête User-Agent que vous avez défini dans votre demande. –