• XSS.stack #1 – первый литературный журнал от юзеров форума

Как правильно реализовать общение с сервером?

CheckData

(L2) cache
Пользователь
Регистрация
19.05.2023
Сообщения
304
Реакции
70
Нужно делать запросы к моему серверу с headers, params и т.д, чтобы он начал выполнять код и походу выполнения отравлял результаты. И тот компьютер, который отсылает их так же мог спокойно принимать

Какой фреймворк использовать в таком случае? И что еще может пригодится ?
 
Well I probably didnt quite get your initial question
Flask should be running on the server to receive requests
And you send the requests from a client via aiohttp
well, just aiohttp can accept requests and be a server. That is, send them requests and receive requests for them
 
aiohttp очень сложен; расскажите нам больше о том, что вы пытаетесь сделать здесь
Нужно делать запросы к моему серверу с headers, params и т.д, чтобы он начал выполнять код и походу выполнения отравлял результаты.
 
затем просто используйте SimpleHTTPHandler

Python:
#!/usr/bin/env python
import SimpleHTTPServer
import SocketServer

class MyRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
    def do_GET(self):
        if self.path == '/':
            do_something()
        return SimpleHTTPServer.SimpleHTTPRequestHandler.do_GET(self)

Handler = MyRequestHandler
server = SocketServer.TCPServer(('0.0.0.0', 8080), Handler)

server.serve_forever()
 
по сути тебе нужны два апи на серверах которые между собой общаются. апи можно через джангу рест реализовать, он досточно удобен, либо фастапи. селери для фоновых задач, и редис для хранения допустим промежуточных результатов.
но если у тебя там образно два скрипта с каким то простым функционалом крутятся, но оно того не будет стоить)

если нужно быстро, просто - глянь в сторону фласка.
 
Нужно делать запросы к моему серверу с headers, params и т.д, чтобы он начал выполнять код и походу выполнения отравлял результаты. И тот компьютер, который отсылает их так же мог спокойно принимать

Какой фреймворк использовать в таком случае? И что еще может пригодится ?
Если клиент должен получать запросы от сервера то подойдет вебсокет, или обычные tcp\udp\raw сокеты, устанавливается соединение, отправляется запрос, http протокол к примеру. После отправки соединение не должно быть закрыто для приема сообщений с сервера.
 
по сути тебе нужны два апи на серверах которые между собой общаются. апи можно через джангу рест реализовать, он досточно удобен, либо фастапи. селери для фоновых задач, и редис для хранения допустим промежуточных результатов.
но если у тебя там образно два скрипта с каким то простым функционалом крутятся, но оно того не будет стоить)

если нужно быстро, просто - глянь в сторону фласка.

Если клиент должен получать запросы от сервера то подойдет вебсокет, или обычные tcp\udp\raw сокеты, устанавливается соединение, отправляется запрос, http протокол к примеру. После отправки соединение не должно быть закрыто для приема сообщений с сервера.
ребят, а такой формулировки будет достаточно, если мне нужно обратиться к серверу и чтобы он вернул мне True или False. И что можно добавить, чтобы защититься от нежелателньых запрсов?


Код:
from aiohttp import web

async def handle_request(request):
    headers = request.headers
    params = request.query
    json_data = await request.json()
    # Ваш код для обработки запроса и выполнения определенных действий
    # Используйте полученные headers, params и json_data для обработки запроса

    # Пример вывода полученных данных
    print("Headers:", headers)
    print("Params:", params)
    print("JSON Data:", json_data)

    Тут выполняем код парсинга с данными полученные с json_data
    # Возвращаем успешный HTTP-ответ
    return web.Response(text="Запрос обработан успешно")

app = web.Application()
app.router.add_post('/', handle_request)  # Обработка POST-запросов
app.router.add_get('/', handle_request)  # Обработка GET-запросов

web.run_app(app, host='127.0.0.1', port=8080)
 
Нужно делать запросы к моему серверу с headers, params и т.д, чтобы он начал выполнять код и походу выполнения отравлял результаты. И тот компьютер, который отсылает их так же мог спокойно принимать

Какой фреймворк использовать в таком случае? И что еще может пригодится ?
аиохттп нужен чтобы юзать асинкио , но лично для меня асинкио тяжеловато . Проще создать 2 потока и использовать любой удобный фреймворк
 
аиохттп нужен чтобы юзать асинкио , но лично для меня асинкио тяжеловато . Проще создать 2 потока и использовать любой удобный фреймворк
ну на сервер будут отсылаться async запросы. Хочется чтобы клиент и сервер был на aiohttp
 
Django - фреймверк. очень большой и куча возможностей. для твоей задачи это overhead.
Flask - микро-фреймверк. гораздо меньше джанги.
aiohttp - хорошего сказать нечего, а плохо не стану. да, может Я тупой и не разобрался, но лучше взять Flask и быть тупым с рабочим проектом, чем взять aiohttp и быть тупым с нерабочим проектом.
FastAPI - фреймверк для создания API. сам не юзал, но это сейчас стандарт enterprise разработки для web API.
Web сокеты - https://pypi.org/project/websockets/ - подключился к клиенту раз и теперь можешь общаться с ним отправляя байты туда-сюда. headers можно прокинуть через параметр extra_headers метода connect.
SimpleHTTPServer - встроеное решение для работы с HTTP протоколом.

Выбирай :) Все кроме последнего поддерживает async/await. Выбирая асинхронщину, надо помнить, что это работа в один поток.

И что можно добавить, чтобы защититься от нежелателньых запрсов?
например, через авторизацию по ssl сертификату. обычно делается по API токену, но без шифрования соединения токен может быть перехвачен.
 
Нужно делать запросы к моему серверу с headers, params и т.д, чтобы он начал выполнять код и походу выполнения отравлял результаты. И тот компьютер, который отсылает их так же мог спокойно принимать

Какой фреймворк использовать в таком случае? И что еще может пригодится ?
Я пользуюсь FastAPI, можешь хоть с requests модулем работать, чтобы отправлять
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх