Позвоните в json web api nopcommerce
Привет, я новичок в nopcommerce 3.5. Мне нужно написать API успокоительного веб-сервиса стороннему (например, мобильному) доступу к сервису. Я знаю, что мы можем получить доступ через Nop.Plugin.Misc.WebServices. Я должен был включить службу от администратора сайта.
Но теперь мой вопрос. Как я могу позвонить в веб-службу, например, для GetPaymentMethod, списка товаров и т. Д.
И если я хочу написать свой собственный веб-сервис с использованием веб-API. какой шаг создать? Я не могу найти какую-либо документацию о веб-сервисе. Пожалуйста, приведите мне пример
Спасибо
1 ответ
Если вы хотите действительно быстро начать писать веб-сервис в NopCommerce, вы можете следовать архитектуре MVC и:
- Создайте метод Action внутри контроллера, который вы считаете подходящим для вашей цели. Например, если вы хотите получить доступ к списку товаров, вы можете создать Action внутри CatalogController, который следует логике существующего действия ProductList.
- Настройте маршрут в RouteProvider.cs, чтобы указать на созданное вами действие. На основе этого маршрута вы можете определить URL вашего сервиса.
- Сделайте обработку, которая вам нужна внутри действия. Если это действие / сервис вызывается с параметрами (в формате строки запроса:
param=value¶m2=value2
), вы можете просто поместить эти параметры в заголовок Action:public ActionResult QuickService(int param, string param2) { ...
и.NET позаботится об их инициализации. - Сохраните результаты в объекте (также может быть анонимным объектом) и в конце действия верните его как Json:
return Json(resultsObject);
Опять же, ASP.NET заботится о сериализации JSON и автоматически устанавливаетContent-Type
HTTP-заголовок ответа "application/json". - Вы можете использовать сервис, вызывающий URL, который соответствует маршруту вашего действия.
Если вы хотите, чтобы пользователи могли войти в систему, используя описанный выше метод, это немного сложнее. Вам нужен клиент веб-сервиса, чтобы иметь возможность принимать и отправлять файлы cookie, а также предоставлять соответствующие услуги для входа в систему, выхода из системы, регистрации,...
Однако в этом случае вам может быть выгоднее использовать мобильную версию сайта.
Последнее замечание: если вы не хотите изменять базовый код NopCommerce, вы можете применить описанные выше действия к плагину. Большинство плагинов NopCommerce соответствуют архитектуре MVC, поэтому вы можете применить описанные выше шаги.