Во-первых, я очень новичок в мире веб-разработки, поэтому извините, если этот вопрос слишком прост. Я пытаюсь использовать python для обработки запросов AJAX. Из чтения документации кажется, что Dojo/request должен быть в состоянии сделать эту форму, но я не нашел примеров, чтобы помочь вам в этом.Вызов функции python с использованием dojo/request
Предполагая, что у меня есть файл Python (myFuncs.py) с некоторыми функциями, которые возвращают данные JSON, которые я хочу получить с сервера. Для этого вызова я заинтересован в конкретной функции внутри этого файла:
def sayhello():
return simplejson.dumps({'message':'Hello from python world'})
Что мне не ясно, как вызвать эту функцию с помощью Dojo/запроса. Документация предлагает примерно следующее:
require(["dojo/dom", "dojo/request", "dojo/json", "dojo/domReady!"],
function(dom, request, JSON){
// Results will be displayed in resultDiv
var resultDiv = dom.byId("resultDiv");
// Request the JSON data from the server
request.get("../myFuncs.py", {
// Parse data from JSON to a JavaScript object
handleAs: "json"
}).then(function(data){
// Display the data sent from the server
resultDiv.innerHTML = data.message
},
function(error){
// Display the error returned
resultDiv.innerHTML = error;
});
}
);
Это даже близко к тому, чего я пытаюсь достичь? Я не понимаю, как указать, какую функцию вызывать внутри myFuncs.py?
Вы не можете вызвать такие функции python. Вы попробуете просто загрузить файл .py. Если вы хотите использовать python для веб-разработки, попробуйте такие фреймворки, как django или pylon. Пройдите через учебник, в котором вы получите ответ. – specialscope
@specialscope спасибо за быстрый ответ. Мне нравится идея использования обещания Dojo по разрешению возвращенных данных с сервера. Можно ли связать вызов Dajaxice с python внутри dojo/request или dojo/prom? – en51nm
Я не знаком с Dajaxice, поэтому не могу комментировать это. Вы можете просто создать GET или POST-обработчики в django и вызвать с помощью dojo get/post (ajax), затем вы можете вернуть json из django на основе запроса и использовать dojo для чтения json и делать все, что вы хотите с ним делать. – specialscope