Разрабатываете API для загружаемого продукта ASP.NET? - PullRequest
2 голосов
/ 30 декабря 2010

У нас есть продукт, созданный с использованием веб-форм ASP.NET (3.5), и мы изучаем возможность добавления API, чтобы другие приложения могли получать доступ к данным и бизнес-логике в приложении.

  • Как лучше всего это реализовать? Я склонен идти по пути использования обработчиков Http для чтения размещенного XML и возврата XML, но я уверен, что должен быть лучший способ. Желательно вместо этого использовать что-то вроде WCF?

  • Поскольку продукт будет загружаться и устанавливаться пользователями на их собственных серверах (а не на хостинге), создается впечатление, что с первого раза возникает большая необходимость сделать это правильно, так как внесение изменений будет затруднено, когда пользователи начнут загрузка и использование продукта. Любые предложения о том, как справиться с этим?

Ответы [ 2 ]

0 голосов
/ 31 декабря 2010

Конечно, WCF - это жизнеспособный способ, но я бы предложил, как Никки, использовать веб-сервисы.

Насчет "управления", ну, вы совершенно правы: как только вы опубликовали интерфейсы, их сложно изменить. Я имею в виду ...

Предполагая, что вы хотите использовать веб-службы, после публикации интерфейсов WSDL и обнаружения, что вы разработали их плохо, вы можете заставить людей, которые уже уже использовали ваш продукт, загрузить новые спецификации и заново реализовать их код. Но если вы обнаружите программную ошибку в своем обработчике веб-службы, вы можете исправить ее как можно скорее, не изменяя контракты на разработку ваших общедоступных веб-служб.

продукт , который вы хотите сделать доступным вместе с общедоступными API, должен быть версионным, как сказал Никки.

Разница между программным продуктом и общедоступными API-интерфейсами заключается в том, что API-интерфейсы являются общедоступными интерфейсами, с помощью которых любой может разработать свое собственное программное обеспечение, взаимодействующее с вашим приложением. Программный продукт готов к работе и запускает ваш код.

Facebook, PayPal и т. Д., Например, публикуют множество API, и вы можете найти множество библиотек, которые оборачивают эти API на ваш любимый язык.

Надеюсь, мой общий ответ помог.

0 голосов
/ 31 декабря 2010

Я предполагаю, что если это сделано с помощью веб-форм, у пользователя будет веб-сервер / IIS. Поэтому я предлагаю дополнение к вашему продукту через веб-сервис.

Таким образом, вы оставляете его открытым для настройки и не слишком привязываете его к проекту веб-форм. Клиенты могут даже настроить их на разных сайтах / серверах, если им нравится. Большинство современных приложений могут легко вызывать веб-службы, поэтому они популярны для API (Google, Amazon, Facebook и т. Д.).

Как это сделать? Я думаю, что это версия. Позвольте клиентам загружать новые версии / исправления ошибок. Я бы посмотрел, как приложения с открытым исходным кодом обрабатывают частые обновления и ветвления, и делают то же самое. Если кто-нибудь знает, как это сделать, это популярные загружаемые приложения.

...