использование c # внутри скрипта Python Apache - PullRequest
0 голосов
/ 03 августа 2010

У меня есть приложение c #, которое определяет поставщика членства, используемого в приложении Asp.Net MVC. И у меня есть сервер Apache httpd, который выполняет аутентификацию с mod_wsgi.

Цель состоит в том, чтобы разделить поставщика членства между ними, чтобы информация аутентификации была одинаковой.

Как мне добиться этого поведения?

Ответы [ 2 ]

1 голос
/ 03 августа 2010

Тривиально.

  1. Apache обслуживает статический контент.

  2. Некоторые URI будут направлены на mod_wsgi в Python.

  3. Затем Python выполнит (через subprocess) программу на C #, предоставив аргументы командной строки и прочитав стандартный выходной ответ из программы C #.

  4. Python делает все, что требуется для обслуживания веб-страниц.

Предполагается, что ваше приложение C # запускается из командной строки, читает параметры командной строки и записывает свой результат в стандартный вывод. Это легко построить. Возможно, сегодня это не так, но любая программа, запускаемая из командной строки, тривиальна для интеграции.

Ваше приложение C #, BTW, также может быть переписано на Python. Это не волшебство. Это просто код. Прочитайте код, поймите код и переведите код. Вы будете намного счастливее, заменив C # на что-то более простое.

0 голосов
/ 03 августа 2010

Несколько способов:

  1. COM-интерфейс (если Windows OS), хотя это будет немного медленно (создайте COM-совместимую библиотеку, зарегистрируйте ее с помощью regasm, используйте ее).
  2. Использование Gearman (не уверен, что быстрее, чем COM, и есть ли у него поддержка Python и C #, расследование зависит от вас) http://gearman.org/
  3. Использование метода, описанного S.Lott
  4. Использование SOAP (медленный, большой)
...