Как использовать выборку API в JavaScript, чтобы получить ответ от веб-метода C #? - PullRequest
0 голосов
/ 17 сентября 2018

Код Java-скрипта :

var AllTeams;

function GetAllTeams_ProductSamplePerClass() {
    return fetch("../Pages/Product.aspx/GetAllTeams", {
        method: 'POST',
        dataType: 'MyTeam'
    }
    ).then(response => {
        AllTeams = response.json();
        console.log('success getall teams', response);
        console.log('teams', AllTeams);
        return AllTeams;

    }).catch(error => {
        console.log('Error in getall teams', error);   
    })
}

C # Метод в файле aspx:

[WebMethod]
public static List<MyTeam> GetAllTeams()  
{
    TeamServiceClient TeamSvc = new TeamServiceClient("wsHttpBinding_TeamWsEndPoint");

    try
    {
        return TeamSvc.GetAllTeams();
    }
    catch
    {
        TeamSvc.Abort();
        return null;
    }
    finally
    {
        TeamSvc.Close();
    }
}

1 Ответ

0 голосов
/ 18 сентября 2018

После поиска в один прекрасный день и продолжая попытки и тестирование, я обнаружил проблему, из-за которой fetch api не доходил до сервера, потому что эта строка отсутствовала в заголовках javascript: { «Принять»: «приложение / JSON», 'Content-type': 'application / json; кодировка = UTF-8' } это сделало ответ не html ответом как прежде, но сделало объект ответа, который прибыл из веб-метода спасибо @David за вашу помощь ссылка, которую я искал и нашел решение: Вызов API-интерфейса вызывает новый сеанс Asp.net

...