HansP: JSP-CGI

Hallo,

bei der Anfrage an den cgi-Server kriege ich immer eine http-errorcode 401 (keine Zugriffsrechte) zurück, obwohl ich Benutzerkennung und Passwort mitgebe.

Wenn ich die Abfrage über die Adressleiste abschicke, gibts kein Problem....

Weiß jemand, was ich falsch mache???

Danke
HansP

Hier der Code:

/************************************************************/

<!-- JSP-Seite "anfrage.jsp" zum Absendender Daten -->
<%@ page language="java" %>
<html>
<body>
<%@ page import = "java.util.*" %>
<%@ page import = "java.net.*" %>
<%@ page import = "java.io.*" %>

<%
String name = "name1";
String pass = "pass1";

//********************************
//* Parameterblock zusammenstellen
//********************************

String qs = null;
String pid = request.getParameter("PRODID");

qs="FORMAT=XML";
qs=qs+"&PRODID="+pid;
qs+="&REQAPPNUM=SI";

/***** SourceCode *****/
// --> Boni Check :   RQ2
// --> Vollauskunft : RPX
if(pid=="101") qs+="&REQSOURCECODE=RQ2";
else {qs+="&REQSOURCECODE=RPX";}

qs+="&HIDUSEID=2";

//****************************************
//* Verbindung aufbauen, Antwort aufnehmen
//****************************************

try {
    String xmlString=null;
    URL url = new URL("http://name:pass@test.httpserver.com/cgi-bin/ceg/inquire.cgi?" + qs);
    out.println(url);
    DataInputStream cgiAntwort = new DataInputStream(url.openStream());

while ((xmlString = cgiAntwort.readLine()) != null) {
        out.println("-->"+cgiAntwort);
    }
}
catch (Exception e) {out.println("Fehler: "+e);}
%>
/**************************************************/

  1. Hi!

    URL url = new URL("http://name:pass@test.httpserver.com/cgi-bin/ceg/inquire.cgi?" + qs);

    ich weiß jetzt nicht wie "url" intern arbeitet, aber so wie es da steht ist es kein gültiges HTTP. Hast Du mal mitgeloggt was genau für ein HTTP-Request gesendet wird?

    Du musst einen speziellen HEader senden, wie etwas

    Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

    wobei "QWxhZGRpbjpvcGVuIHNlc2FtZQ==" der per base64 kodierte String von username:password ist.

    Siehe: http://www.faqs.org/rfcs/rfc2617.html

    Grüße
    Andreas