Реклама на сайте Advertise with us

Связать Javascript и Python cgi

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

Считаю до трех

С нами с 23.03.05
Сообщения: 12353
Рейтинг: 2918

Ссылка на сообщениеДобавлено: 17/12/20 в 16:16       Ответить с цитатойцитата 

Вдруг кто-то что-то знает. Задача такая - отправить данные из Javascript в скрипт на Python и получить обратно результат. Кажется просто, но только кажется. Два дня усиленного гугления ничего толком не дали.
С JavaScript понятно - отправить данные через AJAX. Но как получить их в Python?
Никакой Python веб фреймворк не используется, а никаких нормальных средств на получение данных как оказалось и нету. Или я не нашел.
Нашлись пока два варианта - через sys.stdin, но тут вопросы с безопасностью.
Второй - вроде как FieldStorage, но это не точно и вообще рабочих вариантов я не нашел.
Ставить фреймворк нельзя, так как сам сайт на PHP.

0
 



С нами с 25.09.20
Сообщения: 196
Рейтинг: 33

Ссылка на сообщениеДобавлено: 17/12/20 в 17:13       Ответить с цитатойцитата 

g python get data from javascript

0
 

Считаю до трех

С нами с 23.03.05
Сообщения: 12353
Рейтинг: 2918

Ссылка на сообщениеДобавлено: 17/12/20 в 17:29       Ответить с цитатойцитата 

Я написал, что я это все уже читал. Там в большинстве случаев используется фреймворк, которого у меня нет. Либо часто вместо ответа рассуждения что было бы неплохо использовать веб-сокеты.

0
 



С нами с 27.04.07
Сообщения: 2
Рейтинг: 17

Ссылка на сообщениеДобавлено: 17/12/20 в 17:35       Ответить с цитатойцитата 

Ajax запрос - это обычный http запрос. Его кто-то на стороне сервера должен принять и ты хочешь чтобы его принял Python скрипт. Значит этот скрипт должен висеть и слушать 80 порт для получения запроса, но так нельзя, ведь есть сайт который работает на ПХП. А перед тем как ПХП скрипт получит запрос еще висит и web сервер который собственно слушает 80 порт. Как минимум есть такие пути:
1) настроить чтобы nginx (Apache ила какой там web сервер стоит) передавали запросы определенного uri на твой питоновский скрипт
2) получить данные в php а он перенаправит данные в питоновский скрипт (exec, system или еще каким-то образом)
3) запустить все таки питоновский фреймворк но на каком-то отдельном порте (например 8080) и посылать ajax запрос с прямым указанием порта

У каждого пути есть свои минусы.

9
 

Считаю до трех

С нами с 23.03.05
Сообщения: 12353
Рейтинг: 2918

Ссылка на сообщениеДобавлено: 17/12/20 в 23:46       Ответить с цитатойцитата 

Спасибо за развернутый ответ.
Была мысль с php, но это получается дикий огород: Javascript передает PHP, тот передает Python, а потом это все в обратном порядке. Тогда уже точно лучше фреймворк. Правда установка в таком варианте для меня слишком сложная, ведь надо чтобы один порт обращался к фреймворку, а другой работал с php и они как-то вместе существовали.
Ну или вообще убирать php и все под фреймворк переделывать.

Пока получилось принимать данные через FieldData, но передавать файлы я еще не пробовал, полдня бился с установкой дополнительных библиотек на Python, которые через pip вообще никак ставиться не хотели.

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »