Battlefieldtracker API für Battlefield 1

  • Hallo zusammen,


    ich versuche die Statistiken von Battlefieldtracker auf meiner Webseite darzustellen - leider gelingt mir dies nicht.


    Mittels dieser Abfrage bekomme ich immer eine Fehlermeldung:


    var request = new XMLHttpRequest();

    request.open('GET', 'https://private-anon-846e53e071-trnbattlefield.apiary-proxy.com/bf1/api/Stats/DetailedStats?platform=3&displayName=MYNAME&game=

    ');

    request.setRequestHeader('TRN-Api-Key', 'MYKEY');

    request.onreadystatechange = function () {

    if (this.readyState === 4) {

    console.log('Status:', this.status);

    console.log('Headers:', this.getAllResponseHeaders());

    console.log('Body:', this.responseText);

    }

    };

    request.send();

    Die Fehlermeldung lautet:

    This API request was compared to a documented resource but was found invalid. Check your request headers and body below.

    Can't validate real media type 'application/json; charset=utf-8' against expected media type 'text/plain'.


    Kann mir jemand sagen, wie der Code lauten muss, um die empfangenden Daten darzustellen?

    Bei Bedarf kann ich auch die Daten des Call+ Response Header´s posten.


    Wie man merkt, kenne ich mich so überhaupt nicht damit aus - vielen Dank für eure Hilfe.


    Gruß

  • Soll das ein spiel sein .Was soll man den mit der api machen können? Sieht mir so aus als wenn man spieler daten anzeigen lassen kann.



    EDIT habe mal etwas geforscht , du must in der api deinen amen oder id eingeben.

    den request den du hattest ,hast du ja von der seite der sollte ja richtig sein

    Habe leider keine id oder namen eraten können snst hätte ich mal was gebastelt ,aber ohne bekomme ich nur error page .


    Code
    var request = new XMLHttpRequest();
    
    request.open('GET', 'https://battlefieldtracker.com/bf1/api/Stats/DetailedStats?platform=WELCHE  PLATTFORM&personaId=SPIELERID&displayName=SPIELER NAMEN&game=WELCHES GAME');
    
    request.onreadystatechange = function () {  if (this.readyState === 4) {    console.log('Status:', this.status);    console.log('Headers:', this.getAllResponseHeaders());    console.log('Body:', this.responseText);  }
    };

    Wollte die bereiche einfärben aber geht nicht

    wenn du da die richtigen daten im link eingibst solltest du die daten von dessen spieler oder was auch immer das ist bekommen

  • Hey,


    das sind die Spieler Statistiken von Battlefield 1 - die Abfrage auf der Test-Seite funktioniert - die Daten werden mit dem Request gesendet.


    Mein Problem ist nur, das ich nicht weiß, wie ich die Daten verarbeiten soll - also auf meiner Website darstellen kann.


    Hier ist der Response Body aus der Anfrage:


    { "successful": true, "result": { "completion": [], "equippedDogtags": null, "highlights": null, "highlightsByType": null, "kills": 65399, "wins": 2006, "deaths": 26772, "spm": 1500.1, "skill": 472.29, "soldierImageUrl": null, "kpm": 1.15, "losses": 895, "timePlayed": 3397606, "rank": { "imageUrl": "[BB_PREFIX]/gamedata/Tunguska/96/100/Rank14-60645e88.png", "name": "Rank 137", "number": 137 }, "rankProgress": { "current": 37200.0, "total": 500000.0 } }, "profile": { "trackerUrl": "https://battlefieldtracker.com/bf1/profile/pc/LuciusVoren", "displayName": "LuciusVoren", "personaId": 518905005, "platform": 3 }, "bbPrefix": "https://eaassets-a.akamaihd.net/battlelog/battlebinary"
    }

  • ja mit ajax die Daten holen und dann ins html geben. Damit sollte es klappen .Hast du einen funktionstüchtigen Link wo auch was drinne steht,dann kann man ja mal was versuchen zu schreibebn

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!