2017-01-18 1 views
1

Ich habe eine URL zum Verbinden verwendet, die 200 oder etwas als Antwortcode zurückgeben sollte.Aber ich bekomme 405 was bedeutet, dass die Art der Methode verwendet ist falsch. Aber die Postman-URL hat eine Antwortmethode.Die Verbindung sendet Antwortcode 405, auch wenn die URL hat Methode, die hier verwendet wird

public class MainActivity extends AppCompatActivity 
{ 
private ProgressDialog progress; 

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    new SendRequest().execute(); 
} 

public class SendRequest extends AsyncTask<String, Void, String> 
{ 

    protected void onPreExecute(){} 

    protected String doInBackground(String... arg0) 
    { 
     String authtoken=""; 
     try{ 

      URL url = new URL("http://direct-me.herokuapp.com/core/docks/"); 



      HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
      conn.setReadTimeout(15000 /* milliseconds */); 
      conn.setConnectTimeout(15000 /* milliseconds */); 

      conn.setRequestMethod("GET"); 
      conn.addRequestProperty("Authorization", authtoken); 
      conn.setDoInput(true); 
      conn.setDoOutput(true); 
      conn.connect(); 

      /*OutputStream os = conn.getOutputStream(); 
      BufferedWriter writer = new BufferedWriter(
        new OutputStreamWriter(os, "UTF-8")); 
      writer.write(getPostDataString(postDataParams)); 

      writer.flush(); 
      writer.close(); 
      os.close();*/ 

      int responseCode=conn.getResponseCode(); 

      if (responseCode == HttpsURLConnection.HTTP_OK) { 

       BufferedReader in=new BufferedReader(new InputStreamReader(conn.getInputStream())); 
       StringBuffer sb = new StringBuffer(""); 
       String line=""; 

       while((line = in.readLine()) != null) { 

        sb.append(line); 
        break; 
       } 

       in.close(); 
       return sb.toString(); 

      } 
      else { 
       return new String("false : "+responseCode); 
      } 
     } 
     catch(Exception e){ 
      return new String("Exception: " + e.getMessage()); 
     } 
    } 

    @Override 
    protected void onPostExecute(String result) { 
     Toast.makeText(getApplicationContext(), result, 
       Toast.LENGTH_LONG).show(); 

    } 
} 
+0

Haben Sie Internetberechtigungen hinzugefügt? – Yoleth

+0

@Yoleth ja ich habe die Berechtigungen hinzugefügt – Yash

+0

Ich denke, habe es selbst gelöst. Das Problem war mit der Methode setDoOutput und setDoInput. Sie zwangen die Anwendung, Post-Anfrage zu senden – Yash

Antwort

0

Ich denke, habe es selbst gelöst. Das Problem war mit der Methode setDoOutput und setDoInput. Sie zwangen die Anwendung, Postanforderung zu senden

Verwandte Themen