• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

ReST Webservice Problem POST

Mario_W

Neues Mitglied
Hallo Forum,

Ich habe ein ReST webservice und möchte ihn über eine kleine Webseite aufrufen. Das Problem ist dabei das der Webservice eine Datei erwartet. Ich habe nun einiges getestet aber ich ebkomme es nicht hin. Vielelciht kann mir jemand helfen:
Mein Code:
Code:
function anfrage_abschicken()
{        
    // Browserkompatibles Request-Objekt erzeugen:
    r = null;
 
    if(window.XMLHttpRequest)
    {
        r = new XMLHttpRequest();
    }
    else if(window.ActiveXObject)
    {
        try
        {
            r = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch(e1)
        {
            try
            {
                r = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch(e2)
            {
                document.getElementById('status').innerHTML = 
                "Request nicht möglich.";
            }
        }        
    }
 
    // Wenn Request-Objekt vorhanden, dann Anfrage senden:
    if(r != null)
    {
        var vorname = window.document.getElementById('vorname').value;
        var nachname = window.document.getElementById('nachname').value;
 
        // HTTP-POST
        r.open('POST', 'http://localhost:8080/httpstarter/ReST/Test', true);
        r.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        r.sendAsBinary(vorname);
 
        window.document.getElementById('status').innerHTML = 'Request gesendet.';
    }
}
HTML:
<html>
    <head>
        <title>HTTP-Request absenden</title>
        <script type="text/javascript" src="abschicken.js"></script>
    </head>
    <body>
        <input id="vorname" size="30" maxlength="40" />
        <input id="nachname" size="30" maxlength="50" />
        <form action="input_file.htm" method="post" enctype="multipart/form-data">
              <p>Waehlen Sie eine SZF Datei aus:<br>
                    <input name="Datei" id="Test" type="file" size="50" maxlength="100000" accept="text/*">
              </p>
        </form>
        <a href="#" onclick="anfrage_abschicken()">Abschicken</a>
        <div id="status">
            Bitte auf 'Abschicken' drücken.
        </div>
    </body>
</html>

Die Fehlermeldung die ich immer bekomme ist:
Code:
 attempted method: OPTIONS  allowed methods: POST
 
Woher kommt die Fehlermeldung? Und wo steht diese? Das geht aus deinem Quelltext nicht hervor.
 
Dann ist dort vermutlich etwas falsch, denn der Request ist ja laut JS ein POST Request. Hast du dir mal die Header angeschaut (z.b. mit Firebug)
 
Wenn ich denn Webservice als GET abiete und in der methode auf GET gehe läuft der Webservice ohne Probleme durch.
 
Zurück
Oben