2014-12-29 5 views
1

Привет, я пытаюсь вытащить свой персонаж из Warcraft Armory, но я не получаю никаких возвращенных результатов. Мой код выглядит следующим образом: имя моего персонажа заменяется моим фактическим именем.WoW Armory APi - Не могу получить Название

HTML

<li>Title Prefix: <span id="title">Test</span> 

Javascript

$(window).load(function getSite(){ 
      $.ajax({     
       url: "http://eu.battle.net/api/wow/character/server/character?fields=titles&jsonp=GoGet", 
       type: 'GET', 
       dataType: 'jsonp', 
       }); 
      } 

     ); 

     function GoGet(data) { 


      $("#title").html(data.titles.name)    
     ;} 

В документации апи показаны пункты JSon для "заголовков", следующим образом:

{ 
"achievementPoints": 675, 
"battlegroup": "Test Battlegroup", 
"calcClass": "f", 
"class": 10, 
"gender": 1, 
"lastModified": 1348187981118, 
"level": 90, 
"name": "Peratryn", 
"race": 25, 
"realm": "Test Realm", 
"thumbnail": "test-realm/1/1-avatar.jpg", 
"titles": [ 
    { 
    "id": 285, 
    "name": "%s, Savior of Azeroth", 
    "selected": true 
    } 
    ] 
} 

Где я буду неправильно?

+0

Что вы вернулись с сервера? –

+0

Полный список названий плюс мой выбранный, я просто не могу заставить мой код выплюнуть его. – Yanayaya

+1

'titles' выглядит как массив. –

ответ

3

Не будучи вау игрока сам, я рискну одно предположение:

 $(window).load(function getSite(){ 
      $.ajax({     
       url: "http://eu.battle.net/api/wow/character/server/character?fields=titles&jsonp=GoGet", 
       type: 'GET', 
       dataType: 'jsonp', 
       success: UpdateTitle 
       }); 
      } 

     ); 

     function UpdateTitle(response) { 
      if (response.titles) { 
       for (var i = 0; i < response.titles.length; i++) { 
        if (response.titles[i].selected === true) { 
         $("#title").html(response.titles[i].name); 
         break; 
        } 
       } 
      }     
     } 

Что это делает зовет UpdateTitle после успешного ответа XHR с вашей предоставленной URL. Эта функция будет проходить через каждый заголовок и обновлять ваш элемент #title с заголовком FIRST selected: true, найденным в ответ json.

+0

Ха, хороший звонок. Обновлено, чтобы включить индекс 0. Очевидно, Yanayaya может сделать что-то умнее со списками, проверять данные и т. Д. –

+0

Спасибо, что это работает, если вы знаете название, которое вы пытаетесь выбрать, вы просто меняете значение, однако мне нужно выбрать заголовок, который имеет был выбран, может ли это быть сделано путем доступа к ресурсу «selected: true»? – Yanayaya

+0

Обновлено для проверки выбранного свойства. –