2017-07-06 2 views
0

Voici comment la demande est censé regarder (en haut): Problème avec la connexion à l'URL

Et voici mon code en Java:

import java.io.BufferedReader; 
import java.io.InputStreamReader; 
import java.net.HttpURLConnection; 
import java.net.URL; 

public class Main { 

public static void main(String[] args) throws Exception{ 
    URL url = new URL("http://ishin-global.aktsk.com"); 
    HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
    conn.setDoOutput(true); 

    conn.setRequestMethod("GET"); 
    conn.setRequestProperty("/ping ", " HTTP/1.1"); 
    conn.setRequestProperty("Host"," ishin-global.aktsk.com"); 
    conn.setRequestProperty("Accept"," */*"); 
    conn.setRequestProperty("X-Platform"," android"); 
    conn.setRequestProperty("X-ClientVersion"," 3.1.2"); 
    conn.setRequestProperty("X-Language"," en"); 
    conn.connect(); 

    String line; 
    BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); 
    while ((line = reader.readLine()) != null) { 
     System.out.println(line); 
    } 
    reader.close(); 
} 

Le problème est que je ne obtenir une réponse du serveur, mais je reçois ces erreurs:

Exception in thread "main" java.io.FileNotFoundException: http://ishin-global.aktsk.com 
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1836) 
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441) 
at Main.main(Main.java:24) 

Je n'ai pas été en mesure de le comprendre, alors j'ai demandé here.Thanks à l'avance

+2

Dans votre image, l'URL commence par 'https', pas' http'. – RealSkeptic

+0

avez-vous vérifié le code/message de réponse? ie 'conn.getResponseMessage()' – Serge

+0

J'ai changé 'http' en' https' et c'est toujours pareil, j'obtiens le code 404 en utilisant 'conn.getResponseMessage()' mais l'URL est valide –

Répondre

1

conn.setRequestProperty("/ping ", " HTTP/1.1"); est incorrect. /ping n'est pas un en-tête de requête HTTP, c'est le chemin de l'URL. Un chemin d'URL fait partie de l'URL elle-même, pas un en-tête:

URL url = new URL("http://ishin-global.aktsk.com/ping"); 

Retirez la ligne conn.setRequestProperty("/ping ", " HTTP/1.1");. Java (et chaque client HTTP) enverra automatiquement la bonne ligne initiale quand ils se connectent.

+0

Merci, ça a fonctionné quand j'ai ajouté/ping –