0

J'ai essayé d'envoyer une réponse au serveur en utilisant la valeur d'authentification, qui me le fournit au moment de la connexion. Le serveur accepte uniquement les demandes lorsque cette valeur est envoyée. Cependant, cela fonctionne bien avec postman (see snapshot) mais pas avec mon code.envoyer la valeur d'en-tête à l'aide de HttpUrlConnection

Code

URL url = new URL(strings[0]); 
      HttpURLConnection con = (HttpURLConnection) url.openConnection(); 
      String token = "" + new String(accessToken); 
      con.setRequestMethod("GET"); 
      con.setRequestProperty("AuthToken", token); 
      con.setReadTimeout(15000); 
      con.setConnectTimeout(15000); 
      con.setDoOutput(false); 

J'ai aussi essayé de cette façon

String token = "AuthToken :" + new String(accessToken); 
con.setRequestProperty("Authorization", token); 
+0

Référez ce code: - http://stackoverflow.com/a/32225262/3946958e –

+0

J'envoie la requête sur la méthode GET – Aamir

Répondre

3

Essayez celui

URL url = new URL(strings[0]); 
     HttpURLConnection con = (HttpURLConnection) url.openConnection(); 
     String token = "" + new String(accessToken); 
     con.setRequestMethod("GET"); 
     con.setRequestProperty("AuthToken", token); 
     con.setReadTimeout(15000); 
     con.setConnectTimeout(15000); 
     con.setDoOutput(false); 
+0

essayez ceci [réponse] (http://stackoverflow.com/a/15555952/2347794) – Safa

0

Essayez de cette façon ..

String token = new String(new Base64().encode(accessToken.getBytes())); 
con.setRequestProperty("AuthToken", token); 
0

Essayez de remplacer myURLConnection.setRequestMethod ("GET"); avec myURLConnection.setRequestProperty ("Request Method", "GET");

S'il vous plaît trouver le code ci-dessous:

URL myURL = new URL(serviceURL); 
HttpURLConnection myURLConnection = (HttpURLConnection)myURL.openConnection(); 
String userCredentials = "username:password"; 
String basicAuth = "Basic " + new String(new Base64().encode(userCredentials.getBytes())); 
myURLConnection.setRequestProperty ("Authorization", basicAuth); 
myURLConnection.setRequestMethod("POST"); 
myURLConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); 
myURLConnection.setRequestProperty("Content-Length", "" + postData.getBytes().length); 
myURLConnection.setRequestProperty("Content-Language", "en-US"); 
myURLConnection.setUseCaches(false); 
myURLConnection.setDoInput(true); 
myURLConnection.setDoOutput(true); 
+0

Je dois le faire en utilisant get method – Aamir

+0

Vous pouvez faire la même chose avec get – fightingCoder

0

Utilisez celui -

** 
* HTTP request types 
*/ 
public static final int POST_TYPE = 1; 
public static final int GET_TYPE = 2; 
public static final int PUT_TYPE = 3; 
public static final int DELETE_TYPE = 4; 

/** 
* HTTP request header constants 
*/ 
public static final String CONTENT_TYPE   = "Content-Type"; 
public static final String ACCEPT_ENCODING  = "Accept-Encoding"; 
public static final String CONTENT_ENCODING  = "Content-Encoding"; 
public static final String ENCODING_GZIP  = "gzip"; 
public static final String MIME_FORM_ENCODED = "application/x-www-form-urlencoded"; 
public static final String MIME_TEXT_PLAIN  = "text/plain"; 

private InputStream performRequest(final String contentType, final String url, final String user, final String pass, 
    final Map<String, String> headers, final Map<String, String> params, final int requestType) 
      throws IOException { 

    DefaultHttpClient client = HTTPClientFactory.newClient(); 

    client.getParams().setParameter(HttpProtocolParams.USER_AGENT, mUserAgent); 

    // add user and pass to client credentials if present 
    if ((user != null) && (pass != null)) { 
     client.getCredentialsProvider().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(user, pass)); 
    } 

    // process headers using request interceptor 
    final Map<String, String> sendHeaders = new HashMap<String, String>(); 
    if ((headers != null) && (headers.size() > 0)) { 
     sendHeaders.putAll(headers); 
    } 
    if (requestType == HTTPRequestHelper.POST_TYPE || requestType == HTTPRequestHelper.PUT_TYPE) { 
     sendHeaders.put(HTTPRequestHelper.CONTENT_TYPE, contentType); 
    } 
    // request gzip encoding for response 
    sendHeaders.put(HTTPRequestHelper.ACCEPT_ENCODING, HTTPRequestHelper.ENCODING_GZIP); 

    if (sendHeaders.size() > 0) { 
     client.addRequestInterceptor(new HttpRequestInterceptor() { 

      public void process(final HttpRequest request, final HttpContext context) throws HttpException, 
       IOException { 
       for (String key : sendHeaders.keySet()) { 
        if (!request.containsHeader(key)) { 
         request.addHeader(key, sendHeaders.get(key)); 
        } 
       } 
      } 
     }); 
    } 

    //.... code omitted ....// 

} 

Référence - Send HTTP GET request with header

+0

Je veux faire ça avec httpUrlConnection – Aamir