2010-11-09 7 views
1

Je suis prêt à récupérer le flux RSS public iTunes à partir d'une application appengine java.Récupération du flux RSS iTunes avec Java

Serveur dev, voici ce que j'essaie:

URL url = new URL("http://ax.itunes.apple.com/WebObjects/MZStoreServices.woa/ws/RSS/topsongs/limit=10/xml"); 
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream())); 

Et c'est la réponse:

<?xml version="1.0" encoding="utf-8"?> <feed xmlns:im="http://itunes.apple.com/rss" xmlns="http://www.w3.org/2005/Atom" xml:lang="en"> <id>http://ax.itunes.apple.com/WebObjects/MZStoreServices.woa/ws/RSS/topsongs/limit=10/xml</id> <title>iTunes Store: Top Songs</title> <updated>2010-11-09T12:45:58-07:00</updated> <link rel="alternate" type="text/html" href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewTop?id=38&amp;popId=1"/> <link rel="self" href="http://ax.itunes.apple.com/WebObjects/MZStoreServices.woa/ws/RSS/topsongs/limit=10/xml"/> <icon>http://phobos.apple.com/favicon.ico</icon> <author><name>iTunes Store</name><uri>http://www.apple.com/itunes/</uri></author> <rights>Copyright 2008 Apple Inc.</rights>

Il y a un lien, « http: //ax.itunes. apple.com/WebObjects/MZStoreServices.woa/ws/RSS/topsongs/limit=10/xml ", qui est affiché. C'est la même URL que celle que je donne à l'objet java URL ...

Si j'ouvre ce lien dans le navigateur, j'obtiens la bonne réponse XML.

J'ai essayé de définir un autre user-agent, mais rien ne change.

Merci pour toute aide.

+0

Quel code de réponse HTTP obtenez-vous? Le serveur envoie-t-il une redirection? – johnstok

+0

C'est bon maintenant, j'ai trouvé mon erreur: avant d'écrire la réponse à la page, j'écrivais des informations de débogage. Après cela, le contenu XML a été vu comme du contenu HTML, et puisque le code XML contient du code de redirection html ... Merci pour votre temps. –

Répondre

0

C'était mon erreur. Avant de sortir la réponse XML, j'écrivais des données html "debug". Ainsi, le XML a été vu comme du code HTML, mais comme le XML contenait des attributs de redirection HTML, j'ai été redirigé!

Merci pour votre temps.

0

Si vous essayez "Afficher la source" dans votre navigateur, vous verrez la même chose que vous voyez avec votre extrait Java.

+0

Malheureusement, non ... J'essaie avec Chrome, et à la fois "html view" et "source view" me montrent le XML. J'ai essayé avec une URL différente, toujours fournie par le générateur de flux RSS d'Apple. –