Я хочу создать сервис API с использованием Django. Основной рабочий процесс выглядит следующим образом:
Сначала запрос http отправляется на http://mycompany.com/create?id=001&callback=http://callback.com
. На сервере будет создана папка с именем 001.
Во-вторых, если папка не существует, она будет создана. Вы сразу получите ответ в формате XML. Это будет выглядеть так:
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>
<statusCode>0</statusCode>
<message>Success</message>
</status>
<group id="001"/>
</response>
Наконец, сервер выполнит свою работу (т.е. создаст папку). После этого сервер выполняет обратный вызов по указанному URL-адресу.
В настоящее время я использую
return render_to_response('create.xml', {'statusCode': statusCode,
'statusMessage': statusMessage,
'groupId': groupId,
}, mimetype = 'text/xml')
чтобы отправить ответ XML обратно. У меня есть шаблон XML, в котором есть statusCode
, statusMessage
, groupId
заполнителей.
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>
<statusCode>{{ statusCode }}</statusCode>
<message>{{ statusMessage }}</message>
</status>
{% if not statusCode %}
<group id="{{ groupId }}"/>
{% endif %}
</response>
Но таким образом я должен поставить шаг 3 перед шагом 2, потому что иначе шаг 3 не будет выполнен, если он идет после оператора return
.
Может кто-нибудь дать мне несколько советов, как это сделать? Спасибо.