我按照教程来却发现总是报错;
代码如下
private String url; //请求的地址
public httpThread(String url) {
this.url = url;
}
public String doGet() {
URL httpUrl = null;
try {
httpUrl = new URL(url);
} catch (MalformedURLException e) {
e.printStackTrace();
}
HttpURLConnection httpURLConnection;
httpURLConnection = (HttpURLConnection) new httpUrl.openConnection();
try {
httpURLConnection.setRequestMethod("GET"); //请求get方法
} catch (ProtocolException e) {
e.printStackTrace();
}
httpURLConnection.setReadTimeout(5000);
//接受返回来的数据
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(httpURLConnection.getInputStream()));
} catch (IOException e) {
e.printStackTrace();
}
String str;
StringBuffer sb = new StringBuffer();
try {
while ((str = reader.readLine()) != null) {
sb.append(str);
}
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
![图片描述][2]
De quel genre de tutoriel s'agit-il ? Utilisez un navigateur pour voir si la requête fonctionne. Il se peut que l'auteur y ait eu accès lors de l'écriture mais pas plus tard
Pourquoi y a-t-il du nouveau
devant httpUrl ?C'est un moyen de supprimer le nouveau
Changez les premières phrases jusqu'à "//Accepter les données renvoyées" par ce qui précède et regardez-les à nouveau
Deux questions, une, pourquoi en ajouter une nouvelle avant d'appeler la méthode. Le voulez-vous tous les jours, idée Si ? l'erreur est signalée, déplacez la souris vers le haut ou placez le curseur dessus et appuyez sur Ctrl+F1 pour examiner de plus près le contenu. Dans la plupart des cas, vous pouvez voir la raison
Deuxièmement, les variables en dehors du bloc de code try. sont initialement nuls et se voient attribuer des valeurs dans le try. Le bloc de code catch ne gère pas correctement l'exception. Il utilise simplement printStackTrace pour frapper l'exception. Ensuite, lorsque vous appelez la méthode qui fait référence à la variable plus tard, une NullPointException sera signalée. . Il s'agit de l'objet httpUrl, ou écrivez ces phrases dans try. , si quelque chose ne va pas, ne l'exécutez pas d'abord s'il est nul lorsque vous l'appelez à l'extérieur. pas bon. Les débutants doivent apprendre à gérer correctement les exceptions et développer de bonnes habitudes comme écrire des commentaires. Vous suivrez que je n'ai plus modifié le code et que je n'ai pas écrit le code de traitement, mais l'idée est comme ça, ne le faites pas. t printStackTrace pour créer des problèmes, enregistrez le journal et lancez le lancement, sinon votre code sera dans l'environnement de production à l'avenir, fonctionnement et maintenance Tout est une question de télépathie, de ne pas être grondé à mort.