2016-11-02 2 views
0

ich Ajax-Request an meinem lokalen Server senden will, hier ist mein:Ajax-Anforderung nicht erlaubt - POST-Anfrage

function getNewsFromDB() { 
    var httpUrl = "http://10.0.0.2:8080/Rosh/" + 'Get_News'; 
    $.ajax({ 
     type: 'POST', 
     url: httpUrl, 
     data: '{"MESSAGE_TYPE":"GET_NEWS","VERSION": "1","CITY":"ROSH_HAAIN"}', 
     dataType: 'json', 
     crossDomain: true, 
     success: function(data) { 
      window.alert("success"); 
     }, 
     error: function(xhr,textStatus,err) { 
      window.alert(JSON.stringify(xhr) + " ... " + textStatus + " ... " + err); 
     } 
    }); 
} 

Auch habe ich diesen Server-Seite Code, um die Anfrage zu bearbeiten:

res.setContentType("application/json"); 

try 
{ 
    res.addHeader("Access-Control-Allow-Credentials", "true"); 
    res.setHeader("Access-Control-Allow-Origin", "*"); 
    res.setHeader("Access-Control-Allow-Methods", "*"); 
    res.setHeader("Access-Control-Allow-Headers", "X-Requested-With,Host,User-Agent,Accept,Accept-Language,Accept-Encoding,Accept-Charset,Keep-Alive,Connection,Referer,Origin"); 
    res.setHeader("Access-Control-Max-Age", "8080"); 
    res.setCharacterEncoding("utf-8"); 
    res.getWriter().write(response); 
} 
catch (IOException e) 
{ 
    // TODO Auto-generated catch block 
} 

Wenn ich meinen Code ausführen, sehe ich einen Dialog im Browser, der besagt: "Bereit Status: 0, Antworttext:" ", Status: 0, StatusText:" Fehler ";

Ich weiß nicht was Dieser Dialog bedeutet, die Anfrage ist nicht auf meinem Server angekommen.

Auch habe ich diesen Fehler:

XMLHttpRequest cannot load http://10.0.0.2:8080/Rosh/Get_News . No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin ' http://localhost:8000 ' is therefore not allowed access. The response had HTTP status code 404.

Hat keine Ahnung, jemand, was in meinem Code falsch?

+0

Die Antwort verfügt nicht über den Header 'Access-Control-Allow-Origin'. Dein Code scheint ihn zu enthalten, also überprüfe, ob du es richtig machst. –

+0

Wie ist der Server implementiert? –

+0

Können Sie es bitte als Antwort hinzufügen? Ich weiß jetzt nicht, wie und wo man es hinzufügen kann ... – foo

Antwort

0

Ok. Mein Problem war, dass ich nicht einige JAR-Dateien in meinem Server-lib-Ordner hatte. Hier sind die Namen der losted Dateien: 1. twilio-java-sdk-3.3.12.jar. 2. jackson-all-1.9.0.jar.

Fügen Sie sie dem Build-Pfad hinzu und es funktioniert gut!

Vielen Dank für Ihre Hilfe.