JQuery AJAX-запрос от веб-службы ASMX

Я пытаюсь запросить данные из веб-службы HTTP POST asmx с помощью jQuery's ajax. Я прочитал множество руководств о том, как сделать это правильно, но безуспешно. Из того, что я могу определить, это сам запрос, который терпит неудачу:

$.ajax({
    type: 'POST',
    url: "http://data.niassembly.gov.uk/organisations.asmx/GetPartiesListCurrent_JSON",
    contentType: 'application/json; charset=utf-8',
    data: JSON.stringify({}),
    dataType: 'json',
    success: function(data){
        if (data.hasOwnProperty('d')){
            msg = data.d;
            } else {
            msg = data;
            } 
            alert(msg);
    }
    ,
    error:function(){
        alert('error');
        }
});

Форматирование JSON правильное, и когда я сохраняю содержимое как локальный файл.json, функция работает. У службы также есть опция GET, но из того, что я прочитал, в этом случае работать не будет.

1 ответ

Решение

Попробуй это:

$.ajax({
  type: 'POST',
  //url: "http://data.niassembly.gov.uk/organisations.asmx/GetPartiesListCurrent_JSON",
  url: "http://data.niassembly.gov.uk/organisations_json.ashx?m=GetPartiesListCurrent",
  contentType: 'application/json; charset=utf-8',
  data: JSON.stringify({}),
  dataType: 'jsonp',
  success: function(data) {
    alert(data.OrganisationsList.Organisation[1].OrganisationName);

  },
  error: function() {
    alert('error');
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

Другие вопросы по тегам