2013-07-29, 13:56
  #1
Medlem
Hej!
Jag frsker skapa en anslutning till en URL med fljande kod:
Kod:
 
            URL u1 = new URL("http://root:password@192.168.0.106/web/remotecontrol?command=115");  
            URLConnection uc1 = u1.openConnection();  
            uc1.connect();
            BufferedReader in = new BufferedReader(new InputStreamReader(
                    uc1.getInputStream()));
Men fr felmeddelandet "Server returned HTTP response code: 401 for URL: http://root: password@192.168.0.106/web/remotecontrol?command=115".
Misstnker att det beror p fel i authentiseringen, men jag lyckas inte hitta ngon lsning p det.
Ngon som vet hur man ska g till vga?
Citera
2013-07-29, 14:15
  #2
Medlem
DurrHurrs avatar
Behver du inte anvnda nn port?
Citera
2013-07-29, 17:44
  #3
Medlem
Mysfarbrorn-s avatar
401 betyder att du r obehrig att komma t innehllet som du frsker hmta - dvs att autentiseringen r felhanterad.

Efter att ha kollat lite stackoverflow-trdar s verkar det som att Java URL inte stdjer syntaxen fr autentisering som du frsker anvnda (anvndare:lsenord@..).

Testa om detta fungerar:

Kod:
String username "root";
String password "password";
String login username ":" password;
String encodedLogin = new sun.misc.BASE64Encoder().encode(login.getBytes());
URL u1 = new URL("http://192.168.0.106/web/remotecontrol?command=115");  
URLConnection uc1 u1.openConnection();  
uc1.setRequestProperty("Authorization""Basic " encodedLogin);
uc1.connect();
BufferedReader in = new BufferedReader(new InputStreamReader(
        
uc1.getInputStream())); 
Citera
2013-07-29, 22:36
  #4
Medlem
Jag hittade konstigt nog ocks den koden igr p stackoverflow men eclipse klagar p "new sun.misc.BASE64Encoder().encode(login.getBytes()); "-raden...
Accessrestriction. Characterencoder is not accessible due to restriction on required library .... classes.jar .
Finns det ngot att gra t det?

EDIT: Lste det genom att g till Window-->Preferences-->Java-->Compiler-->Error/Warnings.
Valde Deprecated and Restricted AP - och ndrade till "warning".
Dock varnar anvndare p internet fr att anvnda det p det sttet. Varfr?
__________________
Senast redigerad av undertoone 2013-07-29 kl. 22:42.
Citera
2013-07-30, 00:53
  #5
Medlem
Mysfarbrorn-s avatar
Citat:
Ursprungligen postat av undertoone
EDIT: Lste det genom att g till Window-->Preferences-->Java-->Compiler-->Error/Warnings.
Valde Deprecated and Restricted AP - och ndrade till "warning".
Dock varnar anvndare p internet fr att anvnda det p det sttet. Varfr?

Kan tyvrr inte svara exakt varfr, mer n att det vl inte direkt rekommenderas att anvnda frldrade mekanismer inom programmering.
Encode-metoden som du anvnder r frldrad och har ersatts med en bttre lsning, och ersattes av en orsak, drav varnas det fr anvndning av denna.

Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in