Служба asmx возвращает xml вместо json - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь настроить службу asmx для возврата json внутри веб-метода. Когда я просматриваю ответ в браузере, а не возвращаю json, я получаю xml. Я настроил свой веб-метод для возврата в формате json. Пожалуйста, найдите мой веб-сервис ниже:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Script.Services;
using System.Web.Services;

namespace space_port_lander_real_app
{
    /// <summary>
    /// Summary description for WebService1
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]


    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class WebService1 : System.Web.Services.WebService
    {

        [WebMethod(CacheDuration = 60)]
        [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
        public string HelloWorld()
        {

            //string xmlstring = "<user><name>Hello World</name><password>some pass</password></user>";

            //var name = $(xml).find('name').text();

            //return xmlstring;

            return "hello world";
        }
    }
}

Вывод ответа выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">hello world</string>

Я настроил свой метод для возврата строки. Я что-то упускаю?

1 Ответ

0 голосов
/ 18 февраля 2020

Если вы хотите, чтобы метод GET возвращал JSON, вам нужно установить его, в противном случае используйте POST.

[ScriptMethod(UseHttpGet=true, ResponseFormat = ResponseFormat.Json)] 

Проверьте Здесь

...