Метод ASMX возвращает XML клиенту вместо JSON - PullRequest
0 голосов
/ 30 марта 2020

Написал веб-метод в ASMX для возврата JSON данных в приложение Angular. Вот как выглядит Webmethod

    [WebMethod]        
    [ScriptMethod(UseHttpGet =true,ResponseFormat =ResponseFormat.Json)]
    public MyProjects getReport(int reportId)
    {
    }

Вот как я его называю Angular

this.client.get('http://localhost:51071/webservice1.asmx/getReport?reportId=596', 
{ withCredentials: true, responseType: 'text' })
   .subscribe( (data) => console.log(data));

Но проблема в данных, полученных в приложении angular в формате XML. Вот почему я указал текст там. Если я укажу json, то там будет, конечно, ошибка триггера с неверными данными json.

Я абсолютно не знаю, что я сделал неправильно или что изменить, чтобы получить чистый JSON

Вот как выглядит вывод консоли

<?xml version="1.0" encoding="utf-8"?>
<Projects xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
  <Success>true</Success>
  <TotalRecords>391</TotalRecords>
  <Data>
    <ProjectData>
      <ProjectCode>E6012</ProjectCode>

1 Ответ

0 голосов
/ 30 марта 2020

Вы уверены в своей конфигурации IIS?

Открытие свойств отображения диспетчера IIS для сервера IIS Нажмите Типы MIME и найдите строку с расширением JSON: Расширение имени файла:. json MIME введите: application / json

, если не найдено, создайте его.

Go вернуться к свойствам сервера IIS Нажмите на сопоставления обработчиков Добавить карту сценария Путь запроса: *. json Исполняемый файл: C: \ WINDOWS \ system32 \ inetsrv \ asp .dll Имя: JSON

Я надеюсь, что это может помочь вам

...