HttpURLConnection conn.getRequestProperty retourner la valeur null
Je suis en train de pousser des données à une URL (MDS_CS) pour un BES
lorsque j'ai mis certains en-Têtes de Requête dans mon code, et de soumettre la demande, le soumis la demande de l'en-tête est défini à null.
voici mon code :
HttpURLConnection conn =(HttpURLConnection)url.openConnection();
conn.setDoInput(true);//For receiving the confirmation
conn.setDoOutput(true);//For sending the data
conn.setRequestMethod("POST");//Post the data to the proxy
conn.setRequestProperty("X-Rim-Push-ID", pushId);
conn.setRequestProperty("Content-Type", "text/html");
conn.setRequestProperty("X-Rim-Push-Title", "-message");
conn.setRequestProperty("X-Rim-Push-Type", "browser-message");
conn.setRequestProperty("X-Rim-Push-Dest-Port", "7874");
//Write the data
OutputStream out = conn.getOutputStream();
out.write(data.getBytes());
out.close();
System.out.println(conn.getHeaderField("X-Rim-Push-ID"));
la dernière ligne de retourner la valeur null lorsque j'essaie de récupérer le X-Rim-Push-Titre il est NULL
seulement X-Rim-Push-ID qui est correctement extrait,
s'il vous plaît aider moi
- Vous définissez les propriétés de la demande, mais l'obtention d'un champ d'en-tête. C'est que sur le but? Personnellement, je m'attends à ce
conn.getRequestProperty("X-Rim-Push-ID")
de travail. - pour clarifier ce que @Thor84no dit,
getHeaderField()
est pour obtenir un en-tête de réponse, pas un en-tête de requête que vous avez précédemment défini. - vrai, s'il vous plaît, comment pourrais-je obtenir la pleine http post avec les en-têtes et les données que j'ai envoyé ? la réponse du serveur est de 200, mais n'a toujours pas récupérer mes données poussé à blackberry
- comment pourrais-je obtenir le plein demande je soumis, comme je l'ai dit la réponse du serveur est de 200 mais je dubte sur ma demande
- configuration d'un proxy pour regarder le trafic http. j'utilise charles proxy, qui fonctionne très bien.
Vous devez vous connecter pour publier un commentaire.
Pas tout à fait sûr de ce que vous voulez vraiment faire. Mais à voir ce qui est affiché sur le serveur vous devez publier sur votre propre et de lire les données que vous y recevoir.
Si vous voulez voir tous les en-têtes de REQUÊTE vous pouvez:
Ou après la connexion, vous pouvez imprimer les en-têtes de RÉPONSE:
data
ressemble, avez-vous le coder correctement?Je conseille Apache HttpClient
HttpClient est un beaucoup plus puissant moyen de traiter avec que HTTP HttpURLConnection.
Quand je vérifie mes en-têtes soumis et de l'inputstream de demande, je reçois la réponse 200 ok, mais rien n'est envoyé à l'appareil