2012-05-28 2 views
0

Я использую Django (1.3), и мне нужно подготовить API для связи с программами wtirtten в C#. Поэтому мы выбираем XML как входной и выходной формат, так как C# неплохо сочетается с XML.Какая структура API соответствует моим потребностям?

Помимо этого, у меня есть проблемы с API, которые хорошо работают с django, было бы достаточно, чтобы помочь мне в моих потребностях. Я провел некоторое исследование API, например, tasty-pie и django-piston. Мои опасения:

  • Я буду держать мои записи пользователей не на User, но какая-то другая модель. Насколько я знаю, apis выше поддерживает самостоятельную аутентификацию и авторизацию. Но холода не найти больше, если держать User все можно?

  • В документах все примеры основаны на выборе записи или создании новой в определенной модели. Но в моем случае мне нужно проверить данные с помощью разных моделей (таким образом, входные данные не могут быть получены из одной модели). Аналогично, вывод также будет создан с данными из разных моделей. С более простыми словами мой ввод и вывод не ограничивается простой моделью, мне нужно обработать (часть входных данных) и создать пользовательские выходные данные в формате XML.

На том, что два основных вопроса, мне интересно, если API-интерфейсы, как Джанго поршнями или вкусного пирога подходит для меня, или то, что мне действительно нужно это приложение, которое может читать и производить XML запросы/Reponses и работает хорошо с Джанго

что мне нужно это приложение Джанго, который:

  • Может производить XML отформатирован ответов (для связи с удаленной программой C#)
  • Может обрабатывать запросы XML (которые приходят с удаленным C# программы) или s реали запросов URL (например, вид на Джанго, но производят вывод XML.)
  • Не использовать проверку подлинности Джанго, но пользовательскую проверку подлинности через себя определенной User модели
+0

:) Вы рассказываете нам о некоторых проблемах и проблемах, которые вы видите с помощью django и api-приложений, но не сообщают о ваших потребностях. – seb

+0

Вопрос обновлен ... Надеюсь, я достаточно ясен – FallenAngel

ответ

0

Джанго поршнями и tastypie и позволяют определить пользовательские данные " форматы ", которые вы описываете. поршень (и, возможно, tastypie) также обеспечивают удобные методы и структуры, которые позволяют легко моделировать ваши модели в качестве конечных точек api. Однако привязка к вашим моделям не является обязательным требованием. Вы существенно создаете словарь, возвращая его, и позволяете разработчикам форматирования выполнять свою работу по преобразованию dict в ответ json или xml.

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

+0

А, спасибо за совет Джсона. Поскольку большинство пользователей .net вокруг меня используют XML, они все советовали мне использовать XML вместо Json – FallenAngel

+0

Хорошо, если он не будет подвергаться воздействию большого плохого мира, вам лучше поддерживать пользователей ваших api: P библиотек вы оцениваете поддержку многих форматов и позволяете клиенту выбирать. –

Смежные вопросы