Java – http / 1.1 400 error request on httpget with basic authentication
                                        
                    •
                    Java                                    
                I made an application for httpget
My application uses its own certificate, so the server requires user login For certificates, I used this tutorial
For httpget, I have implemented this implementation:
HttpClient client = new CustClient(getApplicationContext()); // HttpClient that uses my certificates
               // Example send http request
               final String url = "https://ip:port/";// <--in  my implementation i've a right url
               HttpResponse response = null;
               HttpGet httpGet = new HttpGet(url);
               //login
               httpGet.addHeader("Authorization","Basic "+Base64.encodeToString("root:root".getBytes(),Base64.DEFAULT));
               StringBuilder testo = null;
               try {
                response = client.execute(httpGet);
                InputStream contenuto = response.getEntity().getContent();
                BufferedReader rd = new BufferedReader(new InputStreamReader(contenuto));
                String line;
                // Read response until the end
                while ((line = rd.readLine()) != null) { 
                    testo.append(line); 
                }
            } catch (Exception e) {
            }
Why do I make client The execute (httpget) response is an HTTP / 1.1 400 error request Why? Is it correct to authenticate in my code?
Solution
The problem is the authorization header
We must use:
httpGet.addHeader("Authorization",Base64.NO_WRAP));
Substitute:
httpGet.addHeader("Authorization",Base64.DEFAULT));
Because the default parameter adds a "CR" line terminator at the end of the string, it is incorrect if you use it for that title
                            The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
                        
                                            
                        THE END
                    
                    
                    
                                                        二维码
                        
                        
                                                
                        